Virtual reality haptic system and apparatus

ABSTRACT

A virtual reality (VR) system includes a VR display and a VR movement apparatus that includes hand user interfaces (UIs) and foot UIs that can support the hands, feet, and total weight of a user. The VR movement apparatus allow the user&#39;s hands and feet to move in 3-dimensional space that include vertical, lateral, and fore-aft direction movements. A computer running VR software coordinate and synchronizes the VR movement apparatus and the VR display to provide system users with simulated activities in a VR environment.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation in part (CIP) application of U.S.patent application Ser. No. 16/095,016, “Virtual Reality Haptic SystemAnd Apparatus” filed Oct. 19, 2018, now U.S. Pat. No. 10,646,768 whichis a 371 of PCT/US2017/028460, “Virtual Reality Haptic System AndApparatus” filed Apr. 19, 2017 which claims priority to U.S. ProvisionalPatent Application No. 62/324,519 “Virtual Reality Haptic System AndApparatus” filed Apr. 19, 2016. This application is also a continuationin part (CIP) application of U.S. patent application Ser. No.16/603,690, “Virtual Reality Haptic System And Apparatus” filed Oct. 8,2019, which is a 371 of PCT/US2018/028423, “Virtual Reality HapticSystem And Apparatus” filed Apr. 19, 2018. U.S. patent application Ser.Nos. 16/095,016, 16/603,690 and 62/324,519, and InternationalApplication Nos. PCT/US2017/028460 and PCT/US2018/028423 are herebyincorporated by reference in its entirety.

BACKGROUND

Virtual reality (VR) systems are computer-based systems that provideexperiences to a participant acting in a simulated environment thatforms a three dimensional virtual world. Most VR system use a visualheadset that allows the user to view and virtually move within acomputer generated environment. Some VR system improve upon the visualexperience by adding mechanical devices that are coupled to the body ofthe user to provide tactile forces or resistance to the movement of theuser's body. However, these types of VR suits are often complexmechanical devices that must be worn by the user. Others offer only alimited haptic experience that loses its appeal due to an uncompellingoverall experience. Others simulate flight, often leaving the usernauseated, since bird-like flight remains an unfamiliar sensation tohumans. What is needed is an improved system that allows a system userto experience physical resistance and feedback but does not require theuser to wear mechanical devices.

SUMMARY OF THE INVENTION

A VR system can include a VR movement apparatus that includes handinterfaces and foot interfaces that can support the hands and feet of asystem user. The VR movement apparatus allow the user's limbs to move in3-dimensional space and not only along a vertical or horizontal motionplane. Since the user's motion may include vertical (Y direction),lateral (X direction) and/or fore-aft (Z direction) movements, the VRmovement apparatus can provide users with simulated real physicalactivities such as climbing just as they would in a real-world climbingenvironment.

The VR system can include a VR program that runs on a computer thatsynchronizes the motion of a user in a VR environment visually through adisplay and through the VR movement apparatus for a haptic experience.The display can be built into a VR headset, which can include an audiosystem. The visual signals are coordinated or synchronized with thecontrol signals to the VR movement apparatus so that the visual virtualenvironment exactly matches with the movement limitations of the handand feet interfaces of the VR movement apparatus. More specifically, theVR program can display a topographical VR environment that includesvirtual objects such as land, mountains, structures, vehicles, etc. TheVR software can allow the hand and feet interfaces to move in freespace, but can prevent movement through the virtual objects so that theuser's movement will stop when virtual contact is made with any virtualstructures. These physical objects can be synchronized with the VRvisual display so that a user can see and feel the virtual objects, inorder to maintain the VR illusion.

In different embodiments, the VR system can be used to simulate variousphysical activities such as: walking, running, climbing, skating,skiing, snowboarding, driving, cycling, swimming, rowing, windsurfing,water skiing, wake boarding, kite boarding, etc. The VR machine can alsoprovide a means for: training simulations, physical therapy, physicalexercise, etc. The VR system can be a safe way to train in simulatedenvironments for hazardous activities such as: rock climbing, skydiving,paragliding, extreme skiing, etc. The inventive VR system can be usedin: gyms, health clubs, hotels, and other locations where one might findgym or experience devices.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a perspective view of an embodiment of a VR movementapparatus with a user.

FIG. 2 illustrates a perspective view of an embodiment of a frame of aVR movement apparatus.

FIG. 3 illustrates a perspective view of an embodiment of a frame and acarriage of a VR movement apparatus.

FIGS. 4-6 illustrate perspective views of an embodiment of a frame,carriage and scissor jack mechanism of a VR movement apparatus.

FIG. 7 illustrates a side view of an embodiment of a VR movementapparatus with a user.

FIG. 8 illustrates a front view of an embodiment of a VR movementapparatus with a user.

FIG. 9 illustrates an X, Y, and Z direction coordinate force diagram.

FIG. 10 illustrates an X, Y, and Z direction acceleration graph.

FIGS. 11-14 illustrate perspective views of an embodiment of a VRmovement apparatus illustrating movements of the frame, carriage andscissor jack mechanism.

FIGS. 15-17 illustrate front views of a user's movements on anembodiment on a VR movement apparatus.

FIGS. 18-20 illustrate side views of a user on an embodiment on a VRmovement apparatus with a VR terrain.

FIG. 21 illustrates perspective view of an embodiment of a VR movementapparatus.

FIG. 22 illustrates perspective view of an embodiment of a VR movementapparatus.

FIG. 23 illustrates front view of an embodiment of a VR movementapparatus.

FIG. 24 illustrates side view of an embodiment of a VR movementapparatus.

FIG. 25 illustrates perspective view of an embodiment of a VR movementapparatus.

FIG. 26 illustrates perspective view of an embodiment of a VR movementapparatus.

FIG. 27 illustrates perspective view of an embodiment of a VR movementapparatus in a housing.

FIGS. 28-33 illustrates perspective and side views of an embodiment of ahand hold interface.

FIG. 34 illustrates a perspective view of an embodiment of a hand gripmounted on rotational mechanisms.

FIGS. 35-37 illustrate top views of linkage system arms for a VRmovement apparatus.

FIG. 38 illustrates a top view of an embodiment of an articulatedarmature that includes rotary encoders.

FIG. 39 illustrates a simplified embodiment of a VR apparatus frame witha right hand armature and a right hand UI in a retracted position.

FIG. 40 illustrates a simplified embodiment of a VR apparatus frame witha right hand armature and a right hand UI in an extended position.

FIGS. 41 and 42 illustrate a simplified embodiment of a VR apparatusframe with a right hand vertical track and horizontal track.

FIG. 43 illustrates a foot armature in a retracted position.

FIG. 44 illustrates a foot armature in an extended position.

FIG. 45-48 illustrate embodiments of VR avatars interacting with VRobjects in VR environments.

FIG. 49 illustrates an embodiment of a computer system used with a VRsystem.

DETAILED DESCRIPTION

The present invention is directed towards a VR system that simulatesvisual and physical interaction with a digital, three-dimensional, VRenvironment. The inventive VR system can include a headset and amechanical VR device that can support the user. A computer generated VRthree dimensional (3D) environment can be seen by a user through the VRheadset and the visual VR environment can be creating a ‘haptic robot’movement apparatus that coordinates a physically simulated force felt bythe user with the expected physical force that would exist in the VRenvironment. The result is an experience that deceives both the visionand the physical interaction, as felt by hands and feet and, byextension the user's arms, back, legs, core muscles, etc. By adding thebodily forces, the inventive VR system can create a more completesensation of VR immersion. The user ‘sees’ a stereoscopically andspatially feels an accurate facsimile of a VR world about them. As theuser interacts within the VR environment, the user would ‘feel’ asimulated, physical response from such interaction.

For example, in an embodiment a user might choose to virtually climb astructure such as the Eiffel Tower. Visually, they would use the headsetto ‘see’ an accurate facsimile of the Tower, along with Paris in thebackground, complete with atmospheric haze, clouds, etc. In theforeground, the user would see their digitally created hands movingwithin their field of vision, reaching to grip a spar, or pulling downas they ascend. The user would be in physical contact with a haptic VRexercise apparatus. Physically, the user's hands and feet would moverelative to each other and relative to the virtual environment with theexpected physical resistance as seen in the VR headset, as if they wereactually climbing upward. In an embodiment, the machine does not provideresistance to upward movement. Gravity can be used to re-center the useras the user ascends so that the system user is moving in place. In arunning application, the VR environment can be an incline. The systemuser can move the legs in a running motion in the VR environment and theVR movement apparatus can re-center the user using gravitational forcesso the user is actually running in place. Similarly, if the user is in amountain climbing VR environment, the VR movement apparatus canre-center the user using gravitational forces so the user is climbing inplace.

In other embodiments, a user may use the inventive VR system tovirtually experience various other types of activities for play, medicalpurposes, fantasy, escape, entertainment, fitness, training, etc. SuchVR simulations could be designed to for various purposes such as:burning calories, working specific muscle groups, rehabilitatingspecific areas of focus, developing muscle memory, etc. Since a digitalcontroller drives the entire process, each motion could be stored andanalyzed for the effectiveness of the overall routine. This would inturn, offer accurate physical activity compliance monitoring or physicaltherapy progress information for a patient that can be provided to adoctor. In other embodiments, the inventive VR system can be used forother purposes such as client training monitoring for a coach orpersonal trainer.

With reference to FIG. 1, an embodiment of a VR exercise apparatus 100is illustrated which can include a rigid frame 1 that can hold allmembers of the assembly. In an embodiment, the frame 1 can includes fouridentical armature assemblies 2 that can be mounted on linear bearings 3that can slide on the frame 1. The movement of the armature assemblies 2can be described with reference to an XYZ coordinate system. The linearbearings 3 can allow the armature assemblies 2 to slide laterally in theX direction on the frame 1 with minimal friction. The armatureassemblies 2 can include scissor jack mechanisms 4 that are coupled tocarriages 8 attached to the linear bearings 3. The carriages 8 can allowthe scissor jack mechanisms 4 to move in the Y direction relative to theframe 1. The scissor jack mechanisms 4 can each have a proximal portionthat is coupled to the carriages 8 and distal ends which can have userinterface mechanisms. The scissor jack mechanisms 4 expand and contractin the Y direction relative to the frame 1. The user can interact withthe distal ends of four scissor jack mechanisms 4. The distal ends ofthe scissor jack mechanisms 4 can be coupled to: a left hand interface,a right hand interface, a left foot interface and a right foot interfacewhich can move to any X, Y, Z position in a 3 dimensional space definedby the frame 1. In an embodiment, the frame 1 can define an X-Y“movement perimeter” and the left hand interface, the right handinterface, the left foot interface and the right foot interface can movewithin the X-Y movement perimeter. In the illustrated example, the lefthand interface, the right hand interface, the left foot interface, theright foot interface and the user 20 may be outside the Z perimeterplane of the frame 1.

With reference to FIG. 2, an embodiment of a rigid frame 1 isillustrated. The frame 1 provides a support structure for the hapticapparatus and can be made of a plurality of straight sections of tubingwhich can have a uniform cross section such as: square, rectangular,circular, or any other suitable cross section. The tubes can function astracks for the linear bearings. In another embodiment, the frame 1 maybe used as a rigid structure on which linear bearing slides and tracksare mounted. In the illustrated embodiments, frame 1 is a 3D box thathas parallel tubes extending the X, Y and Z directions to define amovement space within the apparatus. The linear bearings can slide overthe outer surfaces of the tubes. In other embodiments, the tubes mayhave slots and the linear bearings may slide on inner surfaces of thetubes.

With reference to FIG. 3, an embodiment of an upper left carriage 8 iscoupled to linear bearings 3 which allow the upper left carriage toslide laterally along the upper lateral tracks of the frame 1 withminimal friction. Only one carriage 8 has been shown here for clarity.The linear bearings 3 allow the carriage 8 to move in the X direction.

With reference to FIG. 4, an embodiment of a scissor jack mechanism 4 isillustrated with the upper left carriage 8 and the frame 1. The scissorjack mechanism 4 is coupled to the carriage 8 with additional linearbearings that allow the scissor jack mechanism 4 to move in the Zdirection relative to the frame 1. The scissor jack mechanism 4 canextend and contract to adjust the vertical position of a distal end. Thedistal ends of the scissor jack mechanism 4 can include hand or footconnections. Clamp and linear bearing assembly 5 controls fore-aftmotion, while the scissor jack mechanism 4 can include a computercontrolled brake that regulates the gravity-driven descent of an endeffector 11. The computer can monitor the component movement and makessure that all the end effectors 11 move at the same pace duringre-centering movements. When ‘vertical motion only’ is happening, thenthe brake 4 is regulating its motion toward the proximal end (for thehands, opposite for the feet). Thus, the scissor jack mechanism 4 cancontrol the vertical Y direction location of the user and the verticalmovements of the user. The linear bearings 3, carriage 8 and scissorjack mechanism 4 of the haptic apparatus, link all of the user'sthree-dimensional motions.

In addition to providing 3D movement, the haptic apparatus, can beconfigured to prevent or resist movement of the distal ends of thescissor jack mechanisms 2, in order to simulate a haptic 3D VRenvironment. In the illustrated embodiment, the movement of the carriage8 and scissor jack mechanism 2 are controlled using a plurality oftiming belts 6 and shafts 7 coupled to gears 17 that can control themotion of all moving components in the haptic apparatus. The timingbelts 6 can include teeth that engage the teeth on gears. The downwardmotion of the linked scissor jack mechanism 2 can result fromgravitational pull on the distal ends by a user. This downward movementcan be regulated by electric motors or brakes controlled by themicroprocessor. Timing belts 5 and spline gears 17 and shafts 7 link alllateral and fore-aft motions of the foot and hand couplings at thedistal ends of the scissor jack mechanism 2. This forces the motionvector of all four end effectors to be identical and synchronized. In anembodiment, the four end effectors can be a left hand interface, a righthand interface, a left foot interface and a right foot interface.

With reference to FIG. 5, the fore-aft motion and lateral motion of thescissor jack mechanisms 4 can be controlled by a fore-aft control motor19 and a lateral control motor 18, respectively. The lateral controlmotor 18 can drive a first timing belt 6 that connects all fourcarriages 8 of the haptic system, when engaged, in a single synchronizedmotion in the same direction. The fore-aft control motor 19 can beconnected to a splined gear 17 which drives a splined shaft 7, whichwhen rotated can move all four scissor jack mechanisms 2 forwardsimultaneously in the Z direction. When fore-aft control motor 19rotates in the opposite direction, the reverse movement of the splinedgear 17 and splined shaft 7 can move all four scissor jack mechanisms 2rearward simultaneously. The splined gear 17 and the shaft 7 at the topof the frame 1 and another shaft 29 at the base of the frame 1 areconnected with a timing belt 28, forcing simultaneous motion between theupper and lower scissor jack mechanisms 2.

FIG. 6 illustrates a close up perspective view of the haptic apparatus.In this embodiment, the fore-aft control motor 19 can be directlycoupled to the splined shaft 7, which extends across the width of theframe 1. The gear 17 is mounted on the opposite end of the splined shaft7 and a belt 28 surrounds the gear 17 and extends down on the right sideof the frame 1 to control the rotation of another splined shaft 29 thatextends across the bottom edge width of the frame 1. A sliding shaftgear 12 can be mounted around the splined shaft 7 that can slide alongthe length and also rotate with the splined shaft 7. The sliding shaftgear 12 is mounted on the carriage 8 and controls the movement of thescissor jack mechanism 4 in the Z direction relative to the carriage 8.The splined shaft 17 can rotate a gear that controls the fore-aftmovement of the carriage 8 can also include a belt which controls thefore-aft movement of the scissor jack mechanisms 2 relative to thecarriages 8 in the Z direction.

The lateral control motor 18 is coupled to a gear which controls themovements of the belt 6 which extends across the upper width of theframe 1 and then bends extends downward long the right side of the frame1 and the bottom horizontal surface of the frame 1. The belt 6 thecarriages 8 can be coupled to the belt so that movement of the belt in afirst direction can cause the carriages 8 move to the right and movementof the belt 6 in the opposite direction can cause the carriages 8 tomove of the left relative to the frame 1.

FIG. 7 illustrates a left side orthogonal view of an embodiment of theinventive VR movement apparatus. The user 20 holds grips on endeffectors 11 with the hands. The end effectors 11 can be a left handinterface and a right hand interface that can be grasped by the user'sleft and right hands. The user's feet can be affixed to the left footinterface and the right foot interface at the distal ends of the legscissor jack mechanisms with bindings similar to bicycle bindings orstraps across the top of the feet 9. The scissor jack mechanisms slidefore and aft in the Z direction on linear bearings 10.

The bearings 10, carriages and scissor jack mechanisms can move freelywhen in a ‘free motion’ state. However, when the user virtually ‘grips’a virtual structure through one or both of the end effectors 11, thecomputer controlled motors and brakes can be actuated to stop furthermovement to simulate user contact with a VR object. The connectedscissor jack mechanism(s) 4 and carriage(s) 2 immediately affix rigidlyto their respective specific timing belts 6 by means of a belt-clamps 21when controlled by the computer to simulate contact with a VR object. Atsuch a VR contact point, some or all of the scissor jack mechanisms 4can hold the user 20 in a fixed position. If the VR software running onthe computer indicates that re-centering is necessary and all of thescissor jack mechanisms 4 can hold the user 20 in a fixed position, thescissor jack mechanisms 4 may move in unison to re-center the user 20within the movement perimeter of the frame 1. During the re-centeringprocess, the computer can move all of the end effectors 11 in the samerelative positions while centering the end effectors 11 within movementperimeter of space as defined by the frame 1.

Each carriage 8 can include is a sliding shaft gear 12 that couples withthe fore-aft timing belts 6 mounted to the carriage 8. This slidingshaft gear 12 is keyed to a spline shaft (not shown in this view),allowing all belts to move simultaneously. Freely-spinning Pulleys 13are mounted to the opposite ends of the carriage 8 so that the fore-afttiming belt 6 forms a tight loop. The movement of the timing belt 6causes the scissor jack mechanisms 4 to move in the Z direction.

FIG. 8 illustrates a rear orthogonal elevation view of an embodiment ofthe VR apparatus. With the belt-clamps in ‘released’ states, the fourarmature assemblies 2 can slide freely in a lateral motion as the linearbearings 3 slide on the frame 1 in the X direction in order to minimizefriction. The fore-aft motions (Z direction) and upward-downward (Ydirection) motions are similarly free to allow user 20 movement in‘released’ state. The user 20 contacts the invention at the endeffectors 11 at the hands 10 and feet 9. Since all downward forces arelinked using the timing belts and spline shafts, the cumulative downwardpressure always can equal the user's total body weight. When thebelt-clamps are engaged, some or all of the four scissor jack mechanisms4 can remain in fixed states, simulating a solid structure to the user'shands and feet. This is reinforced by the visual confirmation of anunmoving structure generated by a computer and seen in the VR headset orother visual display.

When the belt-clamps are engaged and the VR machine needs to re-centerthe user, all four scissor jack mechanisms 4 can move in X, Y and Zdirections—vertical, lateral, fore-aft as needed, in a synchronizedmotion, in order to return the user 20 to the center of the frame 1 ofthe machine, preventing the scissor jack mechanisms 4 from moving out ofor in contact with a movement perimeter of the VR machine.

With reference to FIG. 9, a plurality of X direction, Y direction and Zdirection motion vectors are illustrated. In order to create controlled,deliberate re-centering of the user's body as they ‘climb’ in place, thescissor jack mechanisms move in a synchronized manner and elongate orcontract, move fore and aft, and move laterally. A combination ofdownward motion 32 and fore-aft motion 33 and lateral motion 34determines the overall vector 35 of the end effector as it isre-centered from starting location 30 to final position 36. Amicroprocessor controls the motors and brakes in order to move the endeffector along the chosen vector 35.

The velocity of each cartesian vector accelerates and decelerates, inorder to minimize the sensation of motion to the user. This velocity maytake the form of a spline curve. Since there exist three motions:negative Y movement 32, negative Z movement 33 and positive X movement14, the top speed may be different for the X movement, Y movement and Zmovement, so that they all reach the final position 36 at precisely thesame time. In this example, the Y movement 32 is greater than the Zmovement 13 or the X movement 34. Therefore, the speed of the Y movement32 will be greater than the speed of the Z movement 13 or the X movement34. This assures that the motion from the start location 10 to thefinish position 36 feels like a straight line to the user.

With reference to FIG. 10, a graph illustrating the velocity of the endeffector in the X, Y and Z directions over the duration of the motionbetween the start of the motion 40 at the beginning position and the endof the motion 46 at the final position is illustrated. The X directionvelocity 44, Y direction velocity 43 and Z direction velocity 42 allstart and finish with very low velocities. However, the X directionvelocity 44, Y direction velocity 43 and Z direction velocity 42 allincrease to a maximum velocity at the middle of the motion duration andthen slow down prior to reaching the end of motion 46 at the finalposition. Because the motion has a longer vertical travel, the Yvelocity 42 is greater than the X velocity 44 or the Z velocity 43. TheZ distance and Z velocity 43 is greater than the X distance or Xvelocity 44. The slow velocities at the starting of the motion 40 andending of the motion 46 help to minimize the acceleration that can beeasily detected so that re-centering is not less detectable by thesystem user.

With reference to FIG. 11 a simplified embodiment of a single armatureassembly 2 is illustrated in an off centered position. In thisembodiment, the armature assembly 2 includes: a scissor jack mechanism4, belts 6, lateral motion control motor 18, fore-aft motion controlmotor 19, and a fore-aft belt clamp 21 that is computer controlled. Atiming belt 6 can be connected to the upper spline shaft 7 with thelower splined shaft (not shown), in order to connect all fore-aft motioninto synchronicity. When the fore-aft motion control motor 19 rotatesthe splined shafts 7, the sliding gears 17 can rotate and move fore-aftbelt along the carriage 8. The scissor jack mechanisms 4 can move in theZ direction relative to the carriage 8 and frame 1. When the motor 18rotates, the carriage 8 and scissor jack mechanisms 4 can move in the Xdirection relative to the frame 1. The scissor jack mechanism 4 has twoproximal ends, which are coupled to the fore-aft timing belt 5. When theclamp 21 is released, the distal end effector 11 can move freelyvertically in the Y direction and then the clamp 21 is actuated, the endeffector 11 can be locked in place preventing movement in the Ydirection.

With reference to FIG. 12, a simplified embodiment of a single armatureassembly 2 is illustrated moving from an off centered position to acentered position. When re-centering the user's lowest foot once thesoftware has ‘decided’ the correct motion vector, the lateral motioncontrol motor 18 and the fore-aft motion control motor 19 relocate theend effector along the horizontal motion plane. Simultaneously, thedescent motion controller 24 regulates the downward motion of the endeffector 11. In one embodiment, the descent motion controller 24 is anelectric motor. In another embodiment, the descent motion controller 24is a mechanical brake, able to regulate motion by creating specifiedresistance. All motions are designed to move the end effector 11 alongthe chosen vector so that their start and stop times are synchronous,regardless of distance. The clamp 21 can be modulated to control thevertical movement rate of the end effector 11. In the illustratedexample, the re-centering movement of the end effector 11 (from theposition illustrated in FIG. 11) includes the following movements:negative X direction 48, negative Y direction 49 and negative Zdirection 50. In doing so, the three-dimensional vectors will follow astraight path and variable velocity pattern as discussed above withreference to FIGS. 9 and 10.

In FIGS. 1-12 an embodiment of a VR movement apparatus was illustratedthat used belts, gears and shafts to perform the re-centering movementof the end effectors 11. In other embodiments, other mechanisms can beused to control and restrict the movement of the end effectors 11. In anembodiment with reference to FIGS. 13 and 14, motors 500, 501, 502 canbe used to with the VR movement apparatus 505. FIG. 13 illustrates aperspective view of a top portion of a VR movement apparatus 505 andFIG. 14 illustrates a perspective of an entire VR movement apparatus505. In this embodiment, the vertical motion of the end effector 11 canbe controlled by a vertical control motor 500, the fore-aft motion ofthe end effector 11 can be controlled by a for-aft motor 501 and thelateral movement of the end effector 11 can be control by a lateralmotor 502. The motors 500, 501, 502 can be controlled by a computerprocessor that allows free movement of the end effector 11 in virtualfree space and prevents movement of the end effectors 11 through anyvirtual solid objects. In an embodiment, the motors 500, 501, 502 can bestepper motors that can also provide location information for the endeffectors 11 in the X, Y and Z directions. The motors can be energizedto resist rotation and movement of the end effectors 11 when the endeffectors 11 are determined to be in contact with a surface of a VRobject.

FIG. 15 shows a front view of a user 20 operating the VR apparatus andillustrates a first step in a user motion cycle. In this case, theuser's hands and feet are confirmed on virtual grip points. The machineremains static, since the user's lowest foot is fixed in its neutralstarting state 25. In the illustrated embodiment, the left foot endeffector determines the lowest point of the user's body. The machine hascalculated the motion vector 26 between the right foot end effector andits neutral starting state 30. No re-centering motion can take placeuntil the end effector for the lowest foot lifts, indicating that anascent motion is taking place. This movement of the lowest foot endeffector can trigger the described re-centering motion.

With reference to FIG. 16, the user 20 has released their confirmed gripfrom their left foot and right hand. The left foot has lifted from itsconfirmed grip point, initiating the machine's re-centering motion. Theremaining, fixed end effectors, the right foot and left hand re-centeraccording to a vector 27 required to relocate the new lowest foot to theneutral starting state 30, in preparation for the next motion of theuser. With the user and end effectors now centered, the user has freerange of motion in all directions. Although this diagram shows themotion in two dimensions, the motion will include the Z-direction(fore-aft) motion, which allows the user to move in all upwarddirections before they are automatically re-centered.

With reference to FIG. 17, the user has chosen a new, fixed position forthe left foot, while the right foot remains in its neutral startingstate 30. At the moment the user lifts their lowest foot, a newre-centering vector is calculated between the foot that will become thenew, lowest foot and its neutral starting state 30, and the re-centeringprocess repeats.

The inventive system can coordinate visual and haptic data that isprovided to the user through a VR headset and the described hapticapparatus. In the haptic apparatus, each Cartesian motion vector (X, Yand Z) is defined by a linear bearing direction. The hardware componentsassociated with each direction can be connected to a timing belt. Thoughthese connections the movement of the timing belts can be activated orreleased as needed by commands from a microprocessor. The flathorizontal plane of motion (X and Z direction) can be controlled byelectric motors. The Y direction (the vertical) movements can becontrolled by an electronically computer controlled brake. In otherembodiments, the Y direction can be controlled by an electric motor orany other suitable control device can be used.

Thus, when the haptic apparatus user is free to move their hand or footunencumbered, provided that the space of the sensor embedded within thegrip or foot binding remains outside the 3D, digital environment. Inthis way, their motion emulates the ‘real world’ environment, where auser is free to move hands and feet, provided they do not intersect withsolid objects. If the user positions their hand or foot and thereforethe positional sensor within that component within the range of anelement that is designated as a ‘hold’ or ‘grabable entity’, then themechanical components which had been moving freely now clamp firmly ontotheir timing belts, thereby locking them into fixed state, as if theyhad grabbed or otherwise intersected a solid mass. As long as downwardpressure is applied to that grip, the clamps remain engaged to thetiming belt. If the user lifts the hand or foot above that ‘hold’, thenjust as in the ‘real world’, the grip is released, the timing belts aredisengaged, and the user is again free to move their hand or footunencumbered.

The role of the software is to detect the relationship between the handand foot interfaces and the VR surface that the user virtually interactswith. If, for example, the user ‘punches’ the virtual, solid mass, thenthe timing belt clamps engage immediately upon the virtual impact. Thesystem can calculate timing and physical impact of intersection betweenthe hand sensor and the virtual solid mass. As long as the hand sensorremains in such position, the hand will remain in locked statepreventing further movement. If the user withdraws their hand afterimpact, then this motion away from a virtual object is detected, and thetiming belt clamps disengage, releasing the hand back to free motion.The user can wear a VR headset with a visual display that projects a VRenvironment. The 3D VR environment space can be coordinated by thecomputer to allow the user to move in an open world VR environment whilebeing physically confined within the frame of the VR apparatus.

In some embodiments, the VR system can use interpret specific actions ofthe user to transition between simulated physical contact with a virtualobject and non-contact. For example, in order to ‘release’ a grip, theuser may simply lift their hand or foot, as they would in a real-worldclimbing environment to move the corresponding hand or foot interfaceaway from the virtual object and into virtual free space. This movementby the user can provide signals to the microprocessor that the userintends to disengage that particular grip, at which time the machinereleases all restrictions to motion for that limb through the VRmovement apparatus controls.

FIG. 18 shows a side view of a virtual surface 400 that a user 20virtually interacts with. The VR software can designate a plurality ofpoints a three dimensional space within this virtual environment as‘solid’ surface or a ‘not solid’ open space. When the user moves the endeffectors 11 in ‘not solid’ space, the user's hands or feet can moveunencumbered in all directions. When the user moves the end effectors 11into a ‘solid’ surface, the user's hands or feet can move be virtuallystopped in the direction of the virtual surface. In this example, theuser's foot end effector 9 intersects with a protrusion in the virtualterrain 402. This feels solid to the user, since the VR software hasdetermined that the end effector 9 rests on a legitimately solid VRsurface, a virtual protrusion in the virtual terrain 402. Therefore, theVR software has restricted motion of the foot end effector 9 in thedownward direction of the virtual terrain 402 relative to the endeffector 9 to simulate a foothold on the virtual terrain 402. The VRsoftware may allow the foot end effector 9 in an upward or rearwarddirection relative to the virtual terrain 402. However, the user's handend effectors 11 are in not solid open space and therefore they are freeto move unrestricted in any direction within the virtual open space.

With reference to FIG. 19, the user may choose to locate their hand andend effector 11 into a protrusion 401, in order to climb higher in thevirtual terrain 400. The user 20 has virtually grabbed a virtualprotrusion 401 in the virtual terrain 400 with a hand. The hand endeffector 11 has intersected with a legitimate virtual protrusion 401feature and performed a grabbing movement. The VR software hasdetermined that the position of the end effector 11 is on the virtualprotrusion 401. The VR software can respond to this virtual contact byrestricting the movement of the end effector 11 in the downwarddirection of the virtual terrain 402 relative to the end effector 9. TheVR software may also restrict the hand end effector 9 movements in the Xand Z directions to simulate a handgrip on the virtual protrusion 401.However, the VR software may not restrict the movement of the hand endeffector 9 in a vertical Y direction away from the virtual protrusion401. Thus, the end effector 9 will no longer have complete free motion,which can provide a solid haptic feel to the user 20 to simulate ahandhold of the virtual terrain 402.

With reference to FIG. 20, a side view of a user 20 on the movementapparatus is illustrated. The user 20 is pushing against a virtualsurface 400 that has no features for grabbing. In this case, the VRsoftware has determined that the user's hand end effector 11 intersectswith the virtual surface 400, and so it restricts continued motion alongthat vector in the Z direction into the virtual surface 400. However,the VR software but may not restrict the movement of the hand endeffector 11 in the X or Y directions because the virtual surface 400would not restrict the movement of the hand end effector 11 in thesedirections. In an embodiment, force sensors can determine that the usercontinues to push in the Z direction towards the virtual surface 400,and the VR software can continue to restrict this continued motion intothe virtual solid surface 400. If the user chooses to withdraw theirhand and hand end effector 11 from the virtual surface 400 in a negativeZ direction, the VR software will sense motion in the oppositedirection, and will immediately allow unencumbered motion in alldirections to simulate the free hand movement in open space.

In an embodiment, the VR software can simulate a friction force of avirtual hand against a virtual surface 400. While the movement in the Zdirection can be restricted by the virtual surface, movement of the endeffector 11 in the X and Y directions can be restricted by a simulatedfriction force which can be represented by the equation, FrictionForce≤(coefficient of friction)×Normal Force. If the coefficient offriction is 0.5 and the normal force is the Z direction force of 20pounds, then the Friction Force≤10 pounds. This means that if the userexerts a force of less than 10 pounds in the X or Y directions, the endeffector will not move because this X or Y direction force is less than10 pounds. In contrast if the user exerts a force more than 10 pounds inthe X or Y directions the end effector 11 will move in the direction ofthe force in the X or Y directions. The coefficient of friction can bevariable and can depend upon the material of the virtual surface 400. Avirtual surface 400 that is a slippery material such as ice will have alower coefficient of friction than a high grip surface such as a rubbertrack. In an embodiment, the VR system can store multiple virtualsurface 400 materials and different coefficients of friction for thedifferent materials. The end effectors 11 can have force transducers,which measure the forces applied by the user 20 and the computer can usethe coefficient of friction to calculate the friction forces to apply tothe contact of the end effectors 11 with the virtual surfaces 400.

While the present invention has been described with reference to VRmovement apparatus that have a frame 1 which defines a movementperimeter and is described above with reference to FIGS. 1-17, in otherembodiments, other VR movement apparatus can be used with the inventivesystem. For example, in an embodiment with reference to FIG. 21, the VRmovement apparatus 300 can take the shape of a large robot that can beapproximately 10 feet high with four articulated arms 303, eachcomprising three rotational joints at the X, Y and Z axes. Gimbal grips307 for the hands, or foot bindings 309 on gimbals to hold the feet canbe mounted to the distal ends of the arms 303. Similar gimbal grips 307and foot bindings 309 can be used with the VR movement apparatusdescribed above with reference to FIGS. 1-17.

To use the VR movement apparatus 300, the user steps into the footbindings 309, and grips the hand gimbal grips 307. The user can alsowear a virtual reality headset that can include a visual display andheadphones placed into or over the ears to minimize outside sound and tocreate stereophonic, three-dimensional sound to further augment theexperience.

The appearance of the VR movement apparatus 300 may comprise a centralcore 311 which can possibly be a cylindrical shaft that may beapproximately 6 feet in length and 1 foot in diameter. The arms 303 canrotate about the central core 311, extending toward the user. Thecentral core 311 can include another pivot 325 at the base 313, allowingthe central core 311 to tilt rearward into ‘prone’ position by themovement of a tilt actuator 321, if the user chooses a virtualexperience that is improved by lying prone (flying, swimming, etc.). Inthis case, a pad 323 would rest against the user's abdomen/chest (like amassage table) to steady the body, in order to isolate motion of thelimbs.

The foot bindings 309 and the hand gimbal grips 307 allow the foot andhand to rotate around their ankle and wrist respectively, so that,although the hand and foot may rotate naturally, the force is translatedback into the armature and overall motion. In an embodiment, the roboticarms 303 can include a motor driving each joint of the arms 303. Therecan be three joints 315 for each of the four arms 303 for a total oftwelve joints 315. The total range of motion of each of the robotic arms303 covers most or all of the range of motion of the corresponding humanlimb, allowing the user full range of motion while interacting with theVR movement apparatus 300. The motors can be integrated with the centralcore 311 of the VR movement apparatus 300, and coupled to the distalends of the robotic arms 303 by drive shafts, belts or chain drives,thereby de-weighting the arm, thereby reducing the inertia caused by thearm's structure.

In an embodiment, the VR movement apparatus 300 can also includeposition sensors at each joint 315, thereby giving positional feedbackto the CPU for each motion and location. Force sensors may also exist ateach joint 315, enabling accurate control of the amount of force thatcan be applied to each motion path. These also accumulate data on thetotal amount of force given by the user, in order to determine thequality of their workout and the progress of their treatment.

In an exercise application, this user movement and force data can besent to approved caregivers, in order to allow compliance monitoring,and to improve the quality of care. Because the VR environment iscontrolled by a computer processor, the ‘Motion Environment’ canfunction independently of an ‘overlay’, to allow the same workout (orphysical therapy) to be offered to users with different VR tastes.Physical therapy motion paths to rehabilitation after hip replacementsurgery, for example, may be overlaid with a VR environment that cansimulate walking in a Tuscan hill-town for one, or storming Normandy foranother, since different virtual experiences may be overlaid at will.

In another embodiment, the four-arm, articulated VR movement apparatus300 can be used without motors. Instead, each of the 12 main joints 315can be use with an electronically-activated clutch to engage, disengage,or precisely vary the amount of resistance at any vector of the arms 303and connected linkages. In this way, the user would feel the forcefeedback, for example, when their hand ‘touched’ a table, since thatmotion direction would be denied by the engaging of the clutch to stopmotion in that particular direction. A combination of clutch engagements(X, Y and Z) would result in the simulation of a physical surrounding.

In another embodiment, the foot bindings 309 and the hand gimbal grips307 can each contain electromagnetic clutches at each pivot or joint 316that can allow the VR software to control the VR movement apparatus 300.Depending up the VR environment being simulated, the VR software canallow free motion, stop all motion, or adjust the resistive force of themotion for each of the foot bindings 309 and the hand gimbal grips 307.This improves the quality of the simulation, for example, if a userchooses to ‘virtually climb’ the Eiffel Tower, the handgrips shouldsuggest that they are gripping a solid, stationary object. In this case,the VR software would deny motion of the gimbal at the grip to improvethe illusion. As the arms 303 of the VR movement apparatus 300 can movein sync with the climbing motion of the user, the grip would releasepressure in a regulated manner so that the grip would move along withthe motion that the user might expect.

In an embodiment, the inventive systems can be used with virtual gamingsystems where users can wear VR headsets, where the player's eyes arefocused on stereoscopic projections of a single environment, can providevisual images that provide a sense of transposition in a computergenerated 3D virtual environment. These VR systems can effectively trickthe eyes of a system user into believing that a transformation has takenplace. Other VR systems can instead or additionally create a simulatedimmersive environment, where the user may turn their head in anydirection, as one would in the ‘real’ world, further enhancing the senseof a virtual reality. However, this visual VR effect can be limited tothe eyes, since the VR system only includes a headset that covers theeyes. These headsets used with the VR systems may only provide a limitedoverall sense of transposition, since the reality seen by the eyes oftencontradicts what should be felt by the hands and feet of the user. Theinventive VR system overcomes these issues by coordinating the hapticsenses with the visual senses in a VR environment. Coordinated motion ofthe four armatures may be used to create effects within the experience.The armatures may suddenly create a rapid descent, momentarilysimulating the weightlessness that the user would feel in a real-worldfree-fall.

In different embodiments, the VR systems can be used for otherapplications including exercise. The obesity epidemic facing the US andbeyond often points back to the sedentary lifestyle. Minimal exercise isrequired to maintain decent health, though a gym environment which maybe the only option for many in bad weather locations can be less thancompelling to many who are most in need of exercise. As discussed, theVR system can be a possible exercise apparatus, which can moreenjoyable, more private and adjustable to the needs of the user.

Because the VR movement apparatus can be tuned to the specific needs ofthe user, it can be useful for physical therapy (PT). If undertaken forthe correctly prescribed amount of PT exercise, will often rehabilitatea patient recovering from a medical intervention. But this PT treatmentcan be tedious and laborious, and is often dismissed by patients who mayneed to do PT alone. This, in effect, undermines the efficiency of thetreatment. Physical Therapy often must be done with accurate, limitedand deliberate motion (direction and range), and with specific forcepressures correlated to the progress of the treatment. A PT wouldideally prefer to prescribe a course of treatment with exactspecifications, and closely monitor the results and progress. The VRmovement apparatus can run VR software which can require a specific typeof exercise and body movement, monitor the force feedback to insurecompliance with a PT exercise schedule, store and forward the patientdata to a physical therapist and doctors.

Both physical therapy and personal training base their success uponcompliance and progress monitoring. Currently, the physical therapistsand personal trainers outline a course of action for their patients andclients, assuming that they will receive honest and accurate progressreports from the patients and clients. The reality of this may varygreatly. For best results, the physical therapists and personal trainerscould watch the progress remotely, and adjust the course of treatment asneeded. The VR movement apparatus can run physical therapy or personaltraining software which can require a specific type of exercise and bodymovement, monitor the force feedback to insure compliance with a PTexercise schedule, store and forward the patient data to a physicaltherapist and doctors.

In different embodiments, the VR movement apparatus 100, 300, 505 can beused for various other applications. For example, Spinal Cord Injury(SCI) patients who require wheelchairs for motion must have professionalphysical therapy in order to allow regular motion to their limbs. Thisis costly, and requires dependence on another person for simply movingthe legs. In an embodiment, the VR movement apparatus 300 can be used toexercise the patient's legs only. Additionally, for this population, asource of escapism and sense of physical freedom offers a quality oflife improvement.

In some embodiments, the VR movement apparatus 100, 300, 505 can be usedfor other health issues. Obesity remains a major health concern for theworld. Children now grow up playing video games, sedentary, for longhours. This is a primary cause of Type II Diabetes, heart issues,digestive issues, and, ultimately, limb loss. Children often prefervideo games over gyms, playgrounds, fields and other physical outdooractivities. They need a source of exercise that, in their perception, isa video game. Ideally, this ‘video game’ is more compelling than whatcan be found at home, giving them a reason to immerse in a greaterexperience. In an embodiment, the VR movement apparatus 100, 300, 505can be used with video game VR software that can be designed to beentertaining to the children and may simulate outdoor physical activity.

People with different personalities may be motivated to physicalactivity by different forms of motivation. While one person may beinspired by competition, another may choose escapism, and anotherchooses instead physical training or learning new skills. Current gymequipment does not respond to individual interests or inspirations.Equipment that could deliver user-tailored workout environmentexperiences would likely motivate a new range of people to enjoy thebenefits of physical fitness.

The proposed invention allows the user free range of motion, whilegiving the force feedback of physical contact with a virtualenvironment. The users may choose where to locate their handholds andfootholds as they climb, inviting them to explore however they choose.Because the virtual environment is created by computer, it may be scaledor adapted to the needs of each user.

With reference to FIGS. 22-24, in yet another embodiment the VR hapticmovement apparatus. FIG. 22 illustrates a perspective view, FIG. 23illustrates a front view and FIG. 24 illustrates a side of the VR hapticmovement apparatus. The VR haptic movement apparatus can utilize fourlinear actuators 404, 406, 408, 410 which have proximal ends that aremounted on a frame 400 and distal ends coupled to the hand grips 412,414 and foot holds 416, 418. The frame 400 can be rigidly mounted to awall or the frame 400 can be rigidly secured to a floor. In theillustrated embodiment, the VR movement apparatus has four actuators: aleft hand actuator 404, a right hand actuator 406, a left food actuator408, and a right foot actuator 418. Each of the hand actuators 404, 406and foot actuators 408, 410 can have a primary linear actuator thatextends outward in the X direction away from the frame 400. Framegimbals 402 can be mounted to the frame 400 to allow the hand actuators404, 406 and foot actuators 408, 410 to rotate freely relative to theframe 400. The distal ends of the hand actuators 404, 406 are coupled tothe hand grips 412, 414 with hand grip interfaces 426. The distal endsof the foot actuators 408, 410 are coupled to the foot holds 416, 418with foot hold interfaces 428.

In the illustrated embodiment, two angular control linear actuators 420,422 can control the angular positions of each of the primary linearactuators 404, 406, 408, 410 relative to the frame 400. The distal endsof the angular control linear actuators 420, 422 can be coupled to amiddle portion of the primary linear actuators 404, 406, 408, 410 andthe proximal ends of the angular control linear actuators 404, 406, 408,410 can be coupled to the frame 400. In the illustrated embodiment,vertical angular control linear actuators 420 can be configured tocontrol the vertical rotational position of the corresponding hand grip412, 414 or foot hold 416, 418. Horizontal angular control linearactuators 422 can be configured to control the horizontal rotationalposition of the corresponding hand grip 412, 414 or foot hold 416, 418.

In the illustrated embodiment, the proximal end of the vertical angularcontrol linear actuators 420 can be vertically aligned with the proximalend of the primary linear actuators 404, 406, 408, 410 and the proximalend of the horizontal angular control linear actuators 422 can behorizontally aligned with the proximal end of the primary linearactuators 404, 406, 408, 410. The proximal ends of the primary linearactuators 404, 406, 408, 410 and the angular control linear actuators420, 422 can be rotational couplings that allow the primary linearactuators 404, 406, 408, 410 to rotate relative to the frame 400. Bycontrolling the extensions of the primary linear actuators 404, 406,408, 410 and the angular control linear actuators 420, 422, thepositions of the corresponding hand grips 412, 414 and foot holds 416,418 can be precisely positioned within a limited hemispherical volumeextending away from the plane of the frame 400. The range of motion ofthe primary linear actuators 404, 406, 408, 410 can control the range ofmotion of the hand grips 412, 414 and foot holds 416, 418.

In the illustrated embodiment, the hand grips 412, 414 can coupled toangular and rotational controls that are coupled to a controller. Theprimary linear actuators 404, 406, 408, 410 and the angular controllinear actuators 420, 422, control the positions of the correspondinghand grips 412, 414 and foot holds 416, 418. Each of the linearactuators can be coupled to a controller which can normally allow freemovement or prevent movement of the user's hands and feet. Thecontroller can also restriction the movements of the hand grips 412, 414and foot holds 416, 418. The restricted movements can correspond or besynchronized with visual signals that is displayed on a VR headset wornby the system user. As discussed, the controller can prevent themovement of the hand grips 412, 414 and foot holds 416, 418 throughvirtual solid objects which can also be displayed through the VRheadset. The controller can allow but provide resistance againstmovement of the hand grips 412, 414 and foot holds 416, 418 throughvirtual loose, elastic or fluid materials. For example, the system mayprovide movement resistance to the foot holds 416, 418 when a user isvirtually running through surfaces such as snow, sand, water, mud, etc.

In the illustrated embodiment, the linear actuators 404, 406, 408, 410,420, 422 are elongated structures that extend and contract in a straightline. The variable length of the linear actuators 404, 406, 408, 410,420, 422 are controlled by a controller that can transmit controlsignals to the linear actuators 404, 406, 408, 410, 420, 422. Thecontrol signals can be electrical signals which drive electric motors.In an embodiment, the linear actuators 404, 406, 408, 410, 420, 422 caninclude a rod that moves within a housing. The movement of the linearactuators 404, 406, 408, 410, 420, 422 can be controlled by linearmotors in the housings which can be functionally the same as a rotaryelectric motor with the rotor and stator circular magnetic fieldcomponents laid out in a straight line. The linear motor can havemagnetic pole faces and magnetic field structures that extend across thelength of the actuator. Since the linear motor moves in a linearfashion, no lead screw is needed to convert rotary motion to linear. Thelinear actuators can be telescoping linear actuators made of concentrictubes that extend and retract like sleeves, one inside the other, suchas the telescopic cylinder. The linear actuators can use actuatingmembers that act as rigid linear shafts when extended. In otherembodiments, the linear actuators 404, 406, 408, 410, 420, 422 can becontrolled by other mechanisms such as pistons that slide withincylinders with hydraulic pressure or threaded lead screws that rotatedwithin threaded couplings where the speed of the rods is proportional tothe rotational velocity of the rods. In an embodiment, the linearactuator can be made an electric cylinder EPCO made by Festo.

With reference to FIG. 25 in yet another embodiment of the VR hapticmovement apparatus is illustrated. In this embodiment, the frame 520coupled to a left hand actuator 504, a right hand actuator 506, a leftfoot actuator 508, and a right foot actuator 510. Each of the limbactuators 504, 506, 508, and 510 are coupled to vertical actuators whichinclude: cars 542, belts 532, tracks 550, motors 530 and pulleys 540.The cars 542 are coupled to belts 532. The cars 542 travel on verticaltracks 550 which are rigidly coupled to the frame 520. The belts 532 areconfigured parallel to the vertical tracks 550 and the belts 532 andcars 542 can be moved with motors 530 which control the verticalpositions of cars 542 which are coupled to the left hand actuator 504,the right hand actuator 506, the left foot actuator 508, and the rightfoot actuator 510. The belts 532 can be mounted on pulleys 540 that areon the top and bottom of the frame 520. The pulleys 540 can rotate onaxis that is horizontal and parallel to the plane of the frame 520.

The left hand actuator 504, the right hand actuator 506, the left footactuator 508, and the right foot actuator 510 can each include an innerarm 560 and an outer arm 562. Proximal ends of the inner arms 560 can becoupled to the cars 542 with car hinges 564 having a vertical axis ofrotation. Similarly, the distal ends of the inner arms 560 can becoupled to outer arms 562 with arm hinges 566 also having a verticalaxis of rotation. Thus, the vertical axis of rotation of the car hinges564 and the arm hinges 566 are parallel to the plane of the frame 520.The left hand grip 512 is coupled to the distal end of the left handactuator 504 and the right hand grip 514 is coupled to the distal end ofthe right hand actuator 506. The left foot hold 516 is coupled to thedistal end of the left foot actuator 508 and the right foot hold 518 iscoupled to the distal end of the right foot actuator 510.

The vertical positions of the left hand actuator 504, the right handactuator 506, the left foot actuator 508, and the right foot actuator510 are controlled by the positions of the cars 542 and vertical belts532. The inner arms 560 and outer arms 562 can move within horizontalplanes which are perpendicular to the plane of the frame 520. Extensionactuators 524 can each have a proximal end coupled to a middle portionof the inner arms 560 and a distal end coupled to a middle portion ofthe outer arms 562. The extension actuators 524 can contract to reduceor expand to increase the distances between the cars 542 and thecorresponding distal ends of the left hand actuator 504, the right handactuator 506, the left foot actuator 508, and the right foot actuator510. The angular position of the distal ends of the left hand actuator504, the right hand actuator 506, the left foot actuator 508, and theright foot actuator 510 relative to the corresponding cars 542 can becontrolled by the horizontal angular actuators 522. In the illustratedembodiment, contraction of the horizontal angular actuators 522 in theleft hand actuator 504 and the left foot actuator 508 will cause thedistal ends of these actuators 504, 508 to move from left to right in anegative X-axis direction and expansion of the horizontal angularactuators 522 in the left hand actuator 504 and the left foot actuator508 will cause the distal ends of these actuators 504, 508 to move fromright to left in a positive X-axis direction. Conversely, contraction ofthe horizontal angular actuators 522 in the right hand actuator 506 andthe right foot actuator 5100 will cause the distal ends of theseactuators 506, 510 to move from right to left in a positive X-axisdirection and expansion of the horizontal angular actuators 522 in theleft hand actuator 504 and the left foot actuator 508 will cause thedistal ends of these actuators 504, 508 to move from left to right in anegative X-axis direction. The inner arm of the actuators 504, 506, 508,510 are coupled to cars 542 with a car hinge having a vertical axis.Thus, the movement of the horizontal angular actuators 522 causes theactuators 504, 506, 508, 510 to rotate about the hinge coupled to cars542.

In the illustrated embodiment, the actuators 504, 506, 508, 510 have aninner arm 560 and an outer arm 562 that are coupled to an arm hingehaving a vertical axis. The extension actuator 524 can include aproximal end coupled to a middle portion of the inner arm 560 and adistal end coupled to the middle portion of the outer arm 562. Thecontraction of the extension actuator 524 causes the outer arm 562 torotate about the arm hinge towards the inner arm 560 and expansion ofthe extension actuator 524 causes the outer arm 562 to rotate about thearm hinge away from the inner arm 560. The horizontal positions of theleft hand grip 512, right hand grip 514, left foot hold 516 and rightfoot hold 518 are controlled by the angular actuator 522 and extensionactuator 524. Thus, linear movement of the left hand grip 512, righthand grip 514, left foot hold 516 and right foot hold 518 in thehorizontal plane requires the coordinated controlled actuation of theangular actuator 522 and extension actuator 524. Similarly, linearmovement in three dimensional space of the left hand grip 512, righthand grip 514, left foot hold 516 and right foot hold 518 in thehorizontal plane requires the coordinated controlled actuation of theangular actuator 522, extension actuator 524 and the vertical actuators.

In the illustrated embodiment, the left hand actuator 504, the righthand actuator 506, the left foot actuator 508, and the right footactuator 510 are each coupled to a car 542 which is coupled to a belt532 driven by a motor 530 that moves the car 542 on a track 550. Thetracks 550 can be tubular straight structures. The cars 542 can havebearings, bushings or wheels that allow the cars 542 to smoothly travelup and down the track 550 with low movement friction.

In an embodiment, two cars 542 can be releasably attached to each of thetwo belts 532. More specifically, a first belt 532 can be releasablycoupled to a first car 542 attached to the left hand actuator 504 and asecond car 542 attached to the right hand actuator 506. When the car 542is attached to the belt 532, the car 542 will move with the belt 532 andwhen detached from the belt 532, the car 542 can be locked in astationary position on the track 550. The cars 542 A user will normallymove the left hand vertically, while the right hand is verticallystationary and move the right foot vertically while the left foot isstationary. The system can respond by attaching the left hand actuator504 to the belt 532 and moving the belt 532 in the direction of user'sleft hand movement. Simultaneously, the right hand car 542 can bereleased from the belt 542 and held in a stationary position on thetrack 550 while the right foot is stationary. The right hand actuator504 can be attached to the belt 532 and the belt 532 can be moved in thevertical direction of user's right foot movement. Simultaneously, theleft foot car 542 can be released from the belt 542 and held in astationary position on the track 550 while the left foot is stationary.The user may then switch the vertical movements by stopping the verticalmovement of the left hand and right foot and switching to move the righthand and the left foot. The system can respond by releasing the lefthand car 542 and the right foot car 542 and locking these cars 542 instationary vertical positions on the track 550 and attaching the righthand car 542 and the left foot car 542 to the belts 532. The system cantrack the movement of the user's right hand and left foot. The systemcan track these movements and move the belts 532 to match the right handand left foot movements.

In other embodiments, with reference to FIG. 26, the cars 542 of theleft hand actuator 504, the right hand actuator 506, the left footactuator 508 and right foot actuator 510 of the VR haptic system caneach be coupled to one of the four separate belts 532. In thisembodiment, the cars 542 can be attached to the belts 532 without havinga release mechanism that releases the car 542 from the belt 532 andsecures the car 542 to the track 550. In this system, the controller canmove each of the cars 542 attached to the left hand actuator 504, theright hand actuator 506, the left foot actuator 508 and right footactuator 510 independently based upon the detected or predictedmovements of the user's hands and feet.

With reference to FIG. 27, the VR haptic movement apparatus isillustrated in a housing unit 500 which surrounds the user. The housing500 can provide a rigid structure which can provide support the user'sweight and the entire VR haptic movement apparatus. In this embodiment,the housing 500 is a box structure which has open sides. The user canenter the housing 500 through a side opening and place the feet in thefoot holds 516, 518, wear the VR googles and grasp the hand grips 512,514. The interior volume of the housing 500 can be sufficient to allowthe user to move in the full range of motion of the VR haptic movementapparatus. Thus, the full extension of the outer arm 562 and the innerarm 560 relative to the car 542 on the track 550. In an embodiment, thehousing unit 500 can also include a user interface 582 which can be avisual touch screen device which can allow users or observers to controlthe settings or view the VR environment that the user is experiencing.

In an embodiment, the handholds and possibly the footholds can utilizeuniversal joint grips that are coupled to joystick potentiometers formovement “intention detection.” When using the haptic system, the user'squality of the experience correlates to the tactile ‘invisibility’ ofthe mechanical interface. The virtual reality physical illusion createdby the system can depend on the users feeling that their hands aremoving in an unencumbered manner. This physical unencumbered illusioncan occur when the user does not feel the presence of that physicalarmature coupled to the handhold.

In an embodiment, the haptic system can detect a user's hand motionusing sensitive pressure sensors in all directions in order to detectthe slightest pressure. However, pressure sensors are expensive, maycause physical resistance to the user's motion in order to detectmotion, and must be located relatively orthogonally to any potentialmotion by the user. Furthermore, sensors may only detect a narrow rangeof hand force pressures. Thus, both a fine pressure sensor and a heavierpressure sensor may be needed to cover the entire pressure range that auser's hand may exert during the operation of the haptic system.Achieving this illusion result can be difficult, since the device mustdetect the slightest intention of motion by the user's hand, withoutcausing physical feedback detectable by the user.

With reference to FIGS. 28-33, an embodiment of a hand hold interface451 with integrated pressure sensors 453 is illustrated. The hand holdinterface 451 can have a handgrip 463 that is always held by the systemuser. The handgrip 463 can be connected to the machine using a universaljoint, which allows for free, unencumbered motion of the user's hand inrotation and translation. The handgrip 463 can have a rod 459 which canhave a rotational coupling that can allow or resist rotational movementof the handgrip 463. The rod 459 can be suspended by spring, piston,counterweight, or other method to a surrounding frame housing 457. Inthe illustrated embodiment, the rod 459 can be concentrically positionedwithin the interior volume of the cylindrical housing 457. A gimbal 455is coupled to a proximal portion of the rod 459 and the housing 457. Asensor 453 can be coupled to a proximal portion of the housing 457 andthe proximal end of the rod 457 so that movement of the handgrip 463relative to the housing 457 will result in movement of the sensor 453.In an embodiment, the sensor 453 can have a joystick lever 465 mechanismwhich can detect the movement of the handgrip 463 relative to thehousing 457 causes movement of the joystick sensor 453.

FIG. 28 is a perspective view of the sensor handgrip 451 and FIG. 29 isa side view of the sensor handgrip 451 that is suspended in a‘center-neutral’ position with the rod 459 positioned in the center ofthe circular opening 461. The rod 459 can have a groove 467 which can bepositioned adjacent to the edge of the circular opening 461. In anembodiment, the sensor handgrip 451 is able to translate in and outalong a center axis, using telescoping components, which are connectedto a linear potentiometer in order to measure that linear motion. In anembodiment, the telescoping components and linear potentiometer can beplaced in the rod 459. In an embodiment, the telescoping components canalso include a spring mechanism that can hold the telescoping componentsin a normal position when no compression or tension forces are appliedto the telescoping components. When a compression force is applied tothe sensor handgrip 451, the spring can be compressed and the linearpotentiometer can output a compression signal. Conversely, when atension force is applied to the sensor handgrip 451, the spring can beextended and the linear potentiometer can output a tension signal. Byusing a combination of a sensor 453 coupled to gimbal 455 and linearpotentiometer coupled with sliding mechanical components, the handgrip451 is able to move a specified amount in any direction, and the motioncan be accurately measured by the potentiometers. A sensor 453 componentis mounted to either the handgrip 451 or the housing 457, with themoving sensor 453 component interfacing with the opposite component.More specifically, the sensor 43 housing can be mounted to the rod 459and a movement mechanism can detect relative movement with the housing457. In the illustrated embodiment, the sensor 453 housing is mounted tothe housing 457 and a component interfacing with the proximal end of therod 459 is a joystick lever 465.

The joystick lever 465 of the sensor 453 in the handgrip 451 and thelinear potentiometer can be in communication with a controller which canreceive electrical signals from the joystick sensor 453 and thepotentiometer. Thus, the controller can detect any movement of thehandgrip 451. In this way, any motion of the grip 451 from its‘center/neutral’ position is immediately detected by a displacement ofthe lever of the joystick sensor 453, relative to the machine's armaturerod 459. The controller can include a processor running software that isconfigured to make the articulated armature keep the joystick lever ofthe joystick sensor 453 always at ‘center-neutral’ position (rod 459centered in the circular opening 461) when the hand grip is in a virtualfree movement space. More specifically, the controller will cause thecorresponding primary linear actuator to be moved to counteract anydisplacement of the joystick lever so the articulated armature rod 459is moved to the center of the circular opening 461 and the joysticklever 465 of the joystick sensor 453 is re-centered. The overall effectis that the user does not feel weight or resistance of the armature,since it always ‘follows’ the motion of a neutrally suspended grip 451,at a faster pace than the user can move. However, the controller canprevent or resist movement of the hand grip or foot hold through virtualobjects.

With reference to FIG. 30 is a perspective view of the movement sensorhandgrip 451 and FIG. 31 is a side view of the sensor handgrip 451. Thehandgrip 463 and rod 459 have been moved by the user out of the‘center/neutral’ position in the that is in an off center position withthe rod 459 positioned lower than the center/neutral position in thecircular opening 461. This movement of the rod 459 indicates that theuser has initiated a move of the handgrip 463 in a downward direction.The system can detect any movement direction within a 360-degree spherethat can be moved in by the user based upon the movement of the rod 459in combination with compression or tension detected by sensors such aspotentiometers. In other embodiments, the compression or tension can bedetected with other sensors such as strain gages. The joystick sensor453, opposite the handgrip 463, has detects the movement and emits anelectrical signal that the user is moving in a direction. The electricalmovement signal can be communicated to the controller CPU, which caninterpret this signal as a motion by the user. The CPU can calculate themotion required to return the joystick sensor 453 back to a‘centered/neutral’ position. The controller CPU can cause the distal endof the corresponding linear actuator can move as rapidly as the user'shands or feet to restore the centered/neutral position of the joysticksensor 453. Thus, the controller CPU can ‘mirror’ the user's motion.

As discussed, the hand grips and foot holds are attached to the distalends of different primary linear actuators. During normal operation, thecontroller CPU can respond to this detected movement by moving thedistal end of the primary linear actuator to re-center the rod 459 inthe circular opening 461. Because the system moves the hand grips andfoot holds in response to user movements, the user does not detect thatthe hand grips and foot holds are following the user's motion. In anembodiment, the controller can predict the movements of the user's limbsand move the distal end of the primary linear actuator to the predictedfuture positions.

With reference to FIG. 32 is a perspective view of the sensor handgrip451 and FIG. 31 is a side view of the sensor handgrip 451 that is in anoff center position with the rod 459 positioned against the lower stopedge of the circular opening 461. The rod 459 may contact the stopposition when the controller cannot keep up with the re-centeringmovement of the primary linear actuator. The contact with the edges ofthe circular opening 461 can protect the internal components of thesensor hand grip 451 including the joystick sensor 453, potentiometers,and any other fragile system components. The contact of the rod 459 withthe edge stop of the circular opening 461 can occur just before or whena user virtually contacts a virtual asset such as a virtual object inthe VR space. In an embodiment, the hand grip or foot hold can stop allmotion. The user can attempt to continue their motion in the directionof the asset or virtual object, however the controller can cause thelinear actuators prevent movement through virtual objects and the systemno longer mirrors the user's motion. When the rod 459 physicallycollides with the edge of the circular opening 461 of the housing 457,this creates the very real sensation that the user has collided with thevirtual entity. As long as pressure is exerted by the user in thedirection of the virtual, solid entity, the armature will remain locked,and the grip arm will remain bottomed out against the chasses.

If the user intends to release their virtual grip on or contact with thevirtual entity, the user can do so by moving their hand (or feet) andtherefore the rod 459 in a different direction. If the system user pullsthe handgrip 463 (or foot hold) away from the virtual assets or virtualobject, the controller will again move with the user. The Joysticksenses that the user has moved their hand position, indicating that theyhave released their virtual grip. At a designated angle before a‘centered/neutral’ position is reached, the controller CPU returns thearmature to ‘mirror mode’, where the primary linear actuators once againmove in response to all detected motions of the user's hand.

The different VR haptic apparatus can have gimbaled hand grips which canprovide a full range of motion in three axes. The inventive VR hapticapparatus described above requires the user to maintain constant contactwith the physical interface components including the hand grips, whilemoving their hand in any natural position in their range of motion. Toachieve this with reference to FIG. 34, the hand grip 568 is mounted toa vertical y-axis rotational movement mechanism 572, which is mounted toa linkage 580, which allows the hand grip 568 to rotate about the y-axisrelative to the linkage 580. The linkage 580 is coupled to a horizontalx-axis rotational movement mechanism 570 which allows the hand grip 568to rotate about the x-axis relative to the linkage 578. This linkage 578is mounted to a z-axis rotational movement mechanism 574 which allowsrotation of the hand grip 568 about the z-axis relative to the arm 576.The hand grip 568 can be coupled to the linkage with universal joints.The combination of three axis movement allows any rotational position ofthe hand to be achieved while maintaining the user's grip on the VRhaptic apparatus throughout the user's VR experience.

In an embodiment, the gimbal grip can have locking pivots which can beactuated by the VR control system. In order to create the ‘hapticillusion’ when the user contacts a virtual, solid object, the user'shand must feel as if it is contacting a solid, non-moving, physicalobject. The VR software is designed to detect when the user's handposition is within an acceptable proximity to or in contact with avirtual object that may be gripped in virtual space. When this proximityor contact is determined between the user and the virtual object, thenthe VR software can lock rotational components at each axis of the handgrip interface are actuated, stopping all motion of the gimbal. Forexample with reference to FIG. 32, when the rotational components arelocked, the system can prevent the rotation of the hand grip 568 aboutx-axis movement mechanism 570, the y-axis movement mechanism 572, andthe z-axis mechanism 574. The effect to the user is that the user willperceive contact with a physical, solid object adjacent to free openspace. Upon moving their hand away from that object in a directiondetermined to be acceptable to the software, the VR software candisengage the locking components, allowing the gimbal to rotate freelyin all directions once again. All rotational locks may be activatedsimultaneously when a user grips a virtual, solid entity such as abranch, for example to prevent rotation in any of the three axis ofrotation. In another instance only a single lock may engage, in order tosimulate the effect of making contact with a virtual, solid entitywithout grabbing it. Thus, the gimbal can rotate in two axes of rotationand lock in one axis of rotation. For example, in a simulated VR firstpunching a virtual wall object would be able to rotate axially, thoughtwo other rotational (pitch and yaw) axis would lock, so that only onedegree of freedom would be allowed.

In some embodiments, the locking pivots used in the hand grips or footholds may be replaced with rotational motor actuators. The rotationalmotor actuators can allow free rotation, no rotation, limited inrotational range or possibly even having variable levels of rotationalresistance. In these embodiments, rotational motion of the wrist throughhand grips can be unencumbered, fully locked, or could allow specificrange of motion to that hand's motion. This would allow the user to feelthe sensation of gripping an object that moves either autonomously or inreaction to their pressure. If a user were to grasp a virtual treebranch, for example, the VR software can be configured to allow thevirtual tree branch to bend under the user's downward weight or force.To create this physical illusion, the VR software can be configured sothat the user would have to feel the grip of a solid object, the virtualbranch, and then simulate the motion of the branch bending in a mannerdetermined by the physical characteristics of the branch, and the wristgimbal would rotate in such a way to simulate the angular orientation ofthe branch. In other embodiments, the VR software can provide users withsimulated movement of other virtual objects. For example, the VRsoftware can simulate the movement of a virtual skateboard rolling on avirtual surface. The user can step on the virtual skateboard and foothold may slide in a horizontal direction that the skateboard isvirtually rolling.

In an embodiment, the hand grips and foot holds of the VR hapticapparatus can include ball and socket ‘float’ to improve haptics. Ajoystick has a limited range of motion of the potentiometers comprisingit. In order that the motion of the wrist gimbal assembly does notexceed this limited range of motion, a physical stop must be created. Inthe proposed invention, a moving toroid or sphere is mounted to thesliding, moving element. A negative of this component surrounds it,shaped by the angular offset determined by the desired range of motionlimitation in all directions. When the user moves their hand in anunencumbered state, the sphere or toroid floats within this negativevolume, never contacting it.

When the user's virtual hand approaches a virtual solid object, aneminent collision is detected. The software then locks the motion of thearmatures allowing the sphere or toroid to continue in its path until itcollides with the negative volume, stopping the motion of that grip, andcreating for the user a sense that they have contacted a physicalobject. Simultaneously, the gimbal's locking pivots may engage, and allrotation is locked, further enhancing the sensation of that contact.

In an embodiment, the hand and feet actuators include parallelogram orpantograph linkages that allow the distal hand grip and foot hold endsof the armatures to remain parallel with back plane in any location toprovide consistent baseline. With reference to FIGS. 35, 36 and 37,various embodiments of the linkages coupled to a car that movesvertically on a track mounted on a frame. The linkages can provideplanar movement of the hand grips and foot holds in a horizontal plane.With reference to FIGS. 35, 36, and 37, the linkages can include a carhinge 614, an inner arm 602, an inner parallel linkage 604, an arm hinge618, an outer arm 608, and an outer parallel linkage 610. The inner arm602 and the inner parallel linkage 604 are parallel elongatedstructures. Similarly, the outer arm 608 and the outer parallel linkage610 are also parallel elongated structures. The inner arm 602 can becoupled to the car 542 with a car hinge 614 and the outer arm 608 iscoupled to a user interface hinge 620 which is attached to the hand grip622. This parallel configuration of the parallel linkages is maintainedregardless of the angular orientation of the inner arm 602 and the outerarm 608. If the linkage systems are used with foot holds, the userinterface hinge 620 can be coupled to the foot holds rather than thehand grips 622.

The differences between FIGS. 35, 36 and 37 include the number ofparallel linkages 604, 610, the relative positions of the inner arm 602and the inner parallel linkage 604, and the relative positions of theouter arm 608 and the outer parallel linkage 610. FIG. 35 illustrates aninner parallel linkage 604 in close proximity to the inner arm 602 andan outer parallel linkage 610 in close proximity to the outer arm 608.For example, in this embodiment, the spacing between the arms 602, 608and parallel linkages 604, 610 is between 5 to 20 centimeters. Incontrast in FIG. 36, the inner parallel linkage 604 spaced farther apartfrom the inner arm 602 and the outer parallel linkage 610 farther apartfrom the outer arm 608. The inner parallel linkage 604 can be coupled tothe car 542 with a separate linkage hinge 616 and an arm hinge offset624. The outer parallel linkage 610 can be coupled to the arm hingeoffset 624 and a grip hinge offset 612. In this embodiment, the spacingbetween the arms 602, 608 and parallel linkages 604, 610 is between 20to 50 centimeters. In FIG. 37, an embodiment of the linkage system isillustrated that has two inner parallel linkages 604 on opposite sidesof the inner arm 602 and two outer parallel linkages 610 on oppositesides of the outer arm 608. The inner parallel linkage 604 can becoupled to the car 542 with separate linkage hinges 616 and arm hingeoffsets 624. The outer parallel linkages 610 can be coupled to the armhinge offsets 624 and grip hinge offsets 612.

As the user moves up, down, left or right in virtual space, the VRapparatus can recenter the user as needed and described above. The VRsystem can perform the recentering in order to prevent the hand gripsand foot holds from exceeding the physical boundaries which can be themovement limits of the hand and foot interfaces of the VR machine. Sincethe movement of the hand grips and foot holds to the movement limitationstops of the hand and foot actuators must not be detected by the user.Thus, during recentering, the hand and feet grips that are not inunencumbered mode must move at the same speed, along the same vector,and without altering the angular orientation of the grip. In anembodiment, the synchronized movement of the hand grips and foot holdsis achieved using motors at the ‘wrist’ pivots. This adds weight to theend of the armature, and adds cost.

In another embodiment, a simpler approach includes a VR apparatus havinglinkages, chains or belts that are fixed at the ‘shoulder’ end of thearmature, connected at the ‘elbow’ end, terminating at the ‘wrist’ end.In this pantograph approach, the grip assembly will remain orthogonal tothe back plane of the machine, regardless of the position of thearmature.

In embodiment, the VR apparatus can be optical sensors and/or videocameras for optical detection of user recentering. For example, theoptical sensors or video cameras can detect the hand and foot centroidsusing spheres mounted on the hand grips and foot holds. The cameras canbe mounted to surrounding VR apparatus frame for position detection. Inthe described invention, the software must be aware of the exactCartesian location and rotational position of the center of the user'shand (together, the ‘centroid’) at all times, for the purposes ofrepositioning, recentering the user, and locating the hand of the avatarwith precision, both in its cartesian and rotational position.

In another embodiment with reference to FIG. 38, an articulated armaturemight include integrated rotary encoders at all rotation joints and alinear encoder at any sliding components. In illustrated embodiment,five rotary encoders and one linear encoder can be required per arm andleg actuator. The rotary encoders can measure the angular positions ofthe rotational components such as the inner arm, outer arm and handgimbal. The linear encoder can measure the vertical linear position ofthe car on the track. For example, a car hinge rotary encoder 626 canmeasure the angular position of the inner arm 602 relative to the car542. The arm hinge rotary encoder 628 can measure the angular positionof the outer arm 608 relative to the inner arm 602 and the grip hingerotary encoder 630 can measure the angular position of the hand grip 622(or foot hold not shown) relative to the outer arm 608. In addition tothe three illustrated rotary encoders 626, 628, 630, the armatures canalso include a rotary encoder for measuring the rotation of the handgrip 622 about the Z-axis and a rotary encoder for measuring therotation of the hand grip 622 about the X-axis. The rotary and linearencoders transmit the angle and position information to the VR controlprocessor which can provide location information for the hand grips andfoot holds. This approach provides exact location of the actuators aswell as the hand grips and foot holds to the VR control processor whichcan then perform the recentering of the actuators so the user cancontinue to move in the VR space.

The described VR apparatus can be in communication with a VR processorwhich can create the VR environment and display users or user avatarswithin the VR environment. In an embodiment, the VR apparatus canperform kinetic scanning of the user's body for avatar creation and theavatar can be seen by the user and others in a third-person view outputon a VR display. In the invention, the body of the user can be digitallyrepresented for several purposes. For example, the user to choose towatch themselves from a ‘third person’ perspective, as if watching fromout of their body. Spectators, similarly, may watch the user in thirdperson view, similar to watching any athlete. Scanning the user's bodywhile it is in motion to allow the user to see their own body as theymove on a visual VR display, further confirming the realism of the VRenvironment. In video games, this is known as third person view. Anavatar overlay model may be applied in a visual display, so that a usermay appear in the virtual environment as a robot, knight in armor,superhero, animal, or whatever enhances their experience. Scanning theuser's body can also create a ‘collision field’ for reference. The VRprocessor CPU will be aware of the shape and position of the armaturesat any moment in time, and the shape and location of the user's body atany moment in time. With this data, the system's VR software mayanticipate a potential collision between armature and user in thephysical space. The VR software can stop the motion of the hand and footactuators to prevent contact with the user to prevent physical injury tothe system user. An accurate three dimensional image capture of theuser's body can allow for multi-player interaction in a VR space. Forexample, if two players exist in a virtual environment, they may see anaccurate representation of an avatar of the other and themselves. Ifplayers box, for example, the scan data of each player becomes a‘collision field’. When a player punches the other, the intersection ofthe data fields represents a punch that has struck the other. This canbe registered to the hitter by stopping motion on all armatureactuators, simulating the feeling of a strike. The receiving player mayfeel a jolt from all armatures, to simulate the avatar's reaction tobeing struck in VR space. This jolt can provide notice of contact whileavoiding physical impact.

In an embodiment, the VR apparatus can have articulated armatures thatcan provide improved performance through higher strength-to-weightcharacteristics. A haptic armature is especially sensitive to movingmass and the user's quality of VR experience can be diminished by theburden of moving the weight of the mechanical structures. On the otherhand, the structure and moving parts must be strong enough to suspendthe user with each armature and to stop their motion as required to bestsimulate the haptic experience.

Ideally, the mechanical armatures are optimized so that they are both aslight and as strong as possible.

In an embodiment, the VR apparatus can have articulated armatures thatcan each have two hinged A-arms. FIGS. 39 and 40 illustrated asimplified VR apparatus that has a frame 720 and a right-hand armature711. FIG. 39 illustrates right-hand armature 711 in a retracted statewith the right-hand interface 713 which can be a hand grip close to theright side of the VR apparatus frame 720 in a positive X axis direction.FIG. 40 illustrates right-hand armature 711 in an extended state withthe right-hand interface 713 extended away from the right side of the VRapparatus frame 720 in a negative X axis direction. The other componentsof the VR apparatus have been omitted so that the described articulatedarmature can be illustrated.

The articulated armatures 711 that can each have two hinged A-arms 717,719 that slide along a horizontal track 721. The horizontal track 721slides vertically along a fixed vertical track 723, which is mounted tothe overall structural frame 720. The two hinged A-arms 717, 719 caneach have two ends that are attached to the horizontal track 721 usingbearings or low friction bushings. The A-arm parts allow motion lateralin the X direction relative to the user by the hinge at the top of theA-arms 717, 719 opening and closing. A lateral actuator 731 such as apneumatic piston coupled to a VR controller can be attached at both afixed end and a moving end to the two moving A-arms 717, 719 that allowsthe VR controller to control of the lateral motion of the right-handinterface 713, creating the haptic movement.

A horizontal actuator 735 which can also be a pneumatic piston can beattached to the smaller of the A-arms 717, 719 where the engages thehorizontal track 721. The horizontal actuator 735 allows the controllerto control the horizontal motion (Y direction) of the A-arms 717, 719 inthe fore-aft motion.

The motion of the armature 711 and the horizontal track 721 carriageassembly are coupled to a vertical track 723. With reference to FIGS. 41and 42, a further simplified assembly of the VR apparatus that has aframe 720, a horizontal track 721 and a vertical track 723 isillustrated. The vertical position of the armature 711 and thehorizontal track 721 on the vertical track 723 can be controlled bybelts 741, which connects to pulleys mounted on a common drive shaft743. In an embodiment, the coupling at the point of the drive shaft 743and a rotational motor (not shown) can be by means of a clutch such as apneumatic or electromagnetic or other clutch mechanism. This allows thearmature 711 to move vertically freely, or in a way fixed to the driveshaft 743. In the illustrated embodiment, the belts 741 or chains thatconnects the horizontal track 721 or vertical carriage assembly to thedrive shaft 743 can be configured in such a way that both ends of thehorizontal track 721 are attached to the same belt 741 or chain. Thiscan insure that both ends of the horizontal track 721 move vertically ina synchronous manner, therefore preventing any ‘binding’ of the armaturewhen the downward weight is unevenly distributed on the horizontal track721 as shown in FIG. 42.

As discussed above, FIGS. 39 and 40 illustrate a single right handarmature. In other embodiments, the VR apparatus can have four armaturethat are the same or similar to the illustrated armature for the lefthand, right hand, left foot and right foot. All four armatures similarlyinteract with this drive shaft 743 by means of a clutch which can engageor disengage their mechanical connectivity to the shaft 743. This allowseach to move freely or in sync with the other armatures, depending onthe conditions set by the haptic experience. If the user, in virtualreality, experiences climbing a rigid structure, then the clutches ofeach armature engage when the user's virtual hand or foot engage thatvirtual structure. If they are climbing vertically, then the motor thatcontrols that drive shaft 743 will lower them at the same pace as theirvertical climb, thereby keeping the user in the center of the machine orVR frame 720, away from the upper ceiling of the machine, though theirperception will be that of climbing infinitely. In another embodiment,each armature is mounted to an individual motor, which controls thevertical motion for each armature either individually or in acoordinated manner, as would be the case to simulate the user climbing afixed structure.

In another embodiment with reference to FIGS. 43 and 44, the VRapparatus can have leg armatures 751 exist as a parallelogram mechanismthat can extend vertically (Z direction). The leg armatures 751 can eachhave a foot interface 761 that slides on a horizontal track 759 (Ydirection). The position of the foot interface 761 on the horizontaltrack 759 can be controlled by an actuator 763 coupled to a VRcontroller. The horizontal track 759 can be attached with hinges to twoA-armatures 753, 755 that swing up or down to control the verticalposition. The weight of the track 759 can be offset by mechanicalspring, pneumatic, electric or hydraulic actuation in such a way that itremains nearly neutrally buoyant at any location. This leg armatures 751assembly allows a strong and lightweight overall structure that can mosteasily support the weight of the user. The horizontal motion iscontrolled by actuators 757 coupled to a VR controller, which are drivenby the experiential needs determined by the virtual reality experience.In this embodiment, the user's horizontal, fore-aft (Y-direction) motionis controlled by a horizontal actuator 763 that can be a piston ormotor/belt assembly.

The leg armatures 751 can be used to simulate various VR movements. Forexample, in order to create the experience of pushing a sled, the VRsystem can have two leg armatures 751. A first foot interface 761, the‘fixed leg’, can remain rigidly locked in place, while a second footinterface 761, the ‘pushing leg’, can slide rearward with force feedbackpressure determined by the VR experience. Since the user's VR experiencewill show them moving forward, the VR system users will perceive a worldwhere they are moving forward, being pushed by their ‘pushing leg’.

In another embodiment, the parallelogram lower armatures could beaffixed to a common rotating drive shaft (such as shaft 743 shown inFIGS. 39-42) using clutches, allowing them to engage or disengage withthe other limbs as needed. In this embodiment, the frame of thestructure surrounds the user, in order to allow attachment of thevertical tracks on either side of the user. This surrounding frame isideal for the machine's overall stability, since it results in a largefootprint with the user at the center.

A frame that surrounds the user in any way can be enhanced to improvethe overall hygiene of the machine. With plastic or glass doors andwindows added so that the user's compartment is completely enclosed, thedevice may be sterilized with UVC light, ozone, desiccation, or acombination of known sterilizing processes in between uses, when themachine has no user within it.

In some embodiments of the VR apparatus, can have left hand, right hand,left foot and right foot armatures that can have resistance mechanismswhich can function as friction ‘brakes’ are added to in order to createbody movement resistance. The resistance can be selectively applied tothe armatures by the VR controller based upon the VR experience toresist the VR apparatus component motions. These resistance mechanismsmay be actuated using pneumatic, hydraulic or electrical methods thatregulate the amount of force applied in order to achieve the desiredresistance.

In order to create a haptic facsimile of reality while in a virtualenvironment, the user experiences several general categories of physicalinteractions that can be controlled by software running on a VRprocessor that controls the VR apparatus including 1) completelystopping user motion, 2) pulling a virtual object, 3) pulling against avirtual entity that pulls back against the user's motion, and 4) movinga virtual hand freely in the air. More details for each of these generalcategories are listed below.

In a first VR simulation condition, a user's motion is stoppedcompletely in a direction. An example of this VR simulation can be tostop a hand movement by stopping the movement of a hand interface as ifthe user had punched or kicked a solid wall. In such a case, the VRsoftware running on the VR controller would detect an imminent collisionwith an unmovable virtual object, and cause the actuators controllingthe movement of the hand interface in the movement direction to lockmotion upon collision, so that the user feels a simulated wall strike.In an embodiment, the VR apparatus can include sensors in the describedhand and/or feet armatures are used to determine when the user intendsto pull their hands or feet in the opposite direction of the strike.When this pull back condition is detected by the sensor(s), thecorresponding actuators can then be released, so that the user feels noresistance pulling their hands (or feet) back in an opposition directionfrom the initial movement direction. In this manner, the interface andarmatures can be controlled to simulate a solid object that the hand andfeet interfaces cannot pass through.

In a second VR simulation condition, a user may pull a virtual objectacross a virtual surface. For the object being pulled to simulateweight, the actuator must simulate the frictional movement resistanceforces based upon a simulated weight of a virtual object and acoefficient friction of the virtual object sliding on a virtual surface.The controller can calculate the simulated resistance force and applythe resistance forces to the armature(s) to simulate sliding resistanceof the virtual object in any direction. In an embodiment, the VRcontroller can apply a specific brake pressure to the armatures ormoving part for the duration of the specific motion. This may also beachieved using pneumatic actuators or resistance mechanisms thatregulate pressure, based on signals from the VR controller software.This VR movement resistance can functionally serve fitness goals aswell, since the VR machine can apply specific pressures to meet thehealth and fitness goals of the user, and adjust the resistance pressureas the physical strengths of the users' changes over time.

In a third VR simulation condition, a user may pull against a virtualentity that pulls against the user's motion. Examples of this VRsimulation can include resistance movements such as pulling a bow andarrow, or lifting an object against gravity. When the user releases thevirtual entity, that pulling or resistance force can be suddenlyreleased. This can be achieved using an actuator that grips an elasticor spring element when the user begins to pull, then releasing theopposing force upon release of the virtual arrow or virtual liftedobject.

In a fourth VR simulation condition, the VR apparatus can be configuredto allow a user move their virtual hand(s) freely in the air. Since theuser may constantly maintain a grip on the armature's end effector orhand interface, this free motion must have as little resistance aspossible by the VR hand interface mechanism in order to simulate freemotion. To achieve this, the VR hand interface motion components can bedesigned to be ‘neutrally buoyant’ in default, non-collision state. Thiscan be achieved mechanically through counterweighting, where an equalweight is suspended by a pulley and connected to the motion componentsby cable. In another embodiment, the VR apparatus can use offloadingsprings, which apply equal force to counteract the weight of the motioncomponents. Alternatively, the VR apparatus can use a pneumatic pistonto regulate the upward pressure to offset the gravitational forces ofthe VR apparatus components. The offloading may be regulated in such away that it applies upward pressure, beyond simply counteractinggravity. This effect can be used deliberately to simulate physicaleffects, such as different gravity pressure, water, water viscosity,among others.

As discussed above, with reference to FIGS. 39-42, the vertical (Zmovement) of the multiple armatures for the hands and/or feet can bedriven or coupled to a single rotating drive shaft and each of thesearmatures can be coupled to a clutch mechanism to power or depower thearmatures. The user may choose or a VR controller can be configured toengage with a virtual element VR object with one or multiple limbs inany combination of hands and feet VR interactions. In such a case, themotion that the hand and feet VR interfaces should move in perfectsynchronicity in order to provide a coordinated VR feel and maintain theVR illusion.

The inventive VR system can create a physical/mechanical platformallowing a user to interact with a virtual environment. A hapticapproach using force feedback allows a simulation that simulatesphysical experience. The described VR machine can be comprised of fourarmatures that are attached to a larger structure by way of guidewheels, pivots and belts, in order to allow their motion. Thelimitations of the motions of the hand and feet user interface (UI)armatures in the VR machine can use actuators such as pneumaticactuators, electric motors or hydraulic actuators. To interact with a VRenvironment, the user engages the hand UIs with their hands and/or feetUIs with their feet. The VR machine UIs can be end effectors of fourmechanical armatures that can support the weight of user at the ends offour beams. When disengaged, the hand and feet UI armatures allowfreedom of motion of the user, and, when engaged by the actuators,restrict motion of the user on demand, or generate specific resistanceagainst specific motion by the user as needed to simulate the VRenvironment by the VR controller coupled to the VR apparatus.

In an embodiment, the processor can be coupled to a memory which storesa three-dimensional VR environment and the processor can identifystationary, moving, and/or movable objects within the VR environment.The hand and feet UIs can move freely in the open three-dimensional VRenvironment. However, the processor can prevent the hand and feet UIsfrom passing from open spaces to solid object volumes in the VRenvironment by controlling the armatures to prevent the hand and feetUIs. The processor can simulate movable objects in the VR environment byresisting the movement of the hand and feet UIs when the move from openspaces to movable object(s) in the VR environment by controlling thearmatures to resist movement of the hand and feet UIs. The level ofresistance can be controlled by the size, weight, and coefficient offriction of the movable object. For example, the controller will providea lower resistance to hand and feet UIs when the object is a small andlight weight object having a low coefficient of friction such as asports ball. The duration of the hand or feet UI movement resistancewill also depend upon the movement of the movable objects. A simulationof a ball being hit or kicked will have a very short duration resistancebecause the virtual ball receives the energy and immediately bouncesaway. The processor will cause the armatures to provide a temporaryforce resistance to the hand or feet UI movement and then remove thehand and feet UI resistance.

In contrast, a virtual large and heavy object having a high coefficientof friction will result in the processor providing much more forceresistance to movements of the hand and feet UIs. The duration of thehand or feet UI movement resistance will be much longer than for asmaller object. The movement resistance can depend upon the movement ofthe virtual movement of the movable objects. For example, the processorcan simulate a virtual horse and may initially resist forces of thearmatures opposing the hand or feet UI movements. Then the processor cancause the virtual horse to become more compliant and the processor canlower the resist forces of the armatures on the hand or feet UImovements.

In an embodiment, the hand and feet UI interfaces can move within a UIvolume within a VR apparatus frame. The UI volume can be identified asspecific X, Y, and Z coordinates that can define individual blocks inthe UI volume and each of these individual blocks can be stored in amemory coupled to the VR processor. Each of the individual blocks can bedefined with a block status as free, solid, or movable and the status ofeach of these blocks can be stored in a UI volume database memory. Thepositions of the hand and feet UIs can also be identified based upon X,Y, and Z coordinates. The VR processor can allow the VR apparatus toallow the range of movement of the UI interfaces to move freely throughthe individual blocks in the UI volume that are free space. However, theVR processor can prevent the hand UIs and/or feet UIs from moving fromfree space blocks through the solid blocks in the UI volume. In someembodiments, there can be differences between the block status basedupon the foot or hand UI. For example, if the VR simulation is abicycle, the movements of the feet UIs can be restricted to two parallelcircular paths with the foot UIs on opposite sides of the two parallelcircular paths to simulate the feet being attached to bicycle pedals.Thus, only a very small number of blocks that define the free movementcircular paths have a free status and all other surrounding blocks canhave a solid status to prevent movement of the foot UIs outside thecircular paths. However, since the hands are free the hand UIs do nothave the same free and solid block status. The hand UIs can have somesolid blocks in the VR volume that simulates a bicycle structure but thesurrounding blocks can have a free status so the user can move theirhands freely. In the bicycle simulation, the VR apparatus can include afixed bicycle seat that the user can sit on. The seat can be attached toa seat armature that can move in the same manner as the VR bicycle inthe VR volume.

The VR processor can also create VR objects that are virtual movablewithin the VR space volume. The VR processor can create resistances tothe hand and feet UIs when they contact the virtual movable objects. Theresistance to the movements of the can be based upon a virtual mass,inertia, coefficient of friction, of the virtual movable object. In anembodiment, the VR processor can run software that determines thecollisions between the hand and feet UIs and the objects within the VRenvironment based upon the movements of the hand and feet UIs and thepositions of the static VR objects such as ground, walls, and otherstructures and movable dynamic VR objects such as paddles, vehicles,sports equipment, etc.

The software can allow the VR processor to simulate the physics of theVR objects in the displayed VR environment and corresponding forces thatare applied to the VR apparatus that match the rules of physics withinthe VR environment that are felt by the user of the VR apparatus. The VRprocessor can calculate and process the complex interactions of the VRusers and VR objects and VR fluids within the VR environment. The visualdisplay of the VR objects and haptic feedback through the VR apparatusis based upon software rules of physics including: aerodynamics,inertia, friction, etc.

The detail of the VR experience can be based upon a quantity ofindividually identifiable blocks within the UI volume. A smaller numberof blocks can result in a VR system where the texture of the virtualsolid objects is less detailed while the texture detail can be improvedby increasing the number of blocks within the UI volume. In someembodiments, the detail of the virtual solid objects can be variablebased upon the hand UIs and feet UIs. The user will notice more detailsbased upon the hand UI interactions with virtual solid objects and notnotice the details based upon the interactions of the feet UIs withvirtual solid objects.

A problem with a typical VR experience, is that the user can typicallybe represented in a “first person” perspective as a pair of floatinghands displayed on the visual display worn by the VR system user. The VRsystem may track the human hand motion accurately, however, the VRdisplay lacks simulation realism since the user only sees the handsfloating in the VR space without the rest of the body to providecontext. These displayed disembodied VR hands can create a poor VRexperience for the user allegedly being immersed into a VR worldenvironment.

In an embodiment, the inventive VR system can provide users with a“third person” perspective where the processor can display a full-bodyavatar that accurately tracks the users' motions and depict the users toscale in a VR environment. This third person perspective can provide abetter user immersed in the VR environment. Additionally, multiplefull-body customizable avatars can exist within the VR environment. Eachuser's avatar can be recognized by other VR system users in the sharedmulti-player VR world, since human body motion is a unique and theavatars can have recognizable biometric identifiers, even without beingan exact replica of the live human users.

Full body avatars can present unique challenges, since no single avatarbody can represent the wide range of human users. Scaling is not asolution, since a short person is not simply a proportionally reducedversion of a taller person. It may only be possible to create properavatar scaling by ratios of the lengths of each user's limbs and torso.Simply creating a scaled avatar does not itself lend to the enhancedsense of realism in VR. The VR processor must also display the movementsof the avatar accurately, and in real time, with the real physicalmotions of the user in the VR apparatus in order to give the users thesense of true VR environment immersion. In order to allow the processorto enable the avatar to recreate the human motion accurately, theprocessor must have positional inputs in enough places on the human bodythat the motion control software can extrapolate the motion of human byreverse-engineering those positions in such a way that an unambiguouspositional likeness of that human can be generated as the displayedavatars.

The processor can display the avatar movements that match its user'sreal motions in real time, at what the user perceives as a 1:1 scale.This is done through the process of inverse kinematics, which translatessix points of motion of the user into a digital skeleton. The sixpositions are determined through a form of optical tracking, whichaccurately determines both the trackers' location in space and rotationon three axes. The six body tracking positions can include: two hands,two feet, one head and one tracker located on the user's back, midwaydown their spine, though this could as easily be positioned at theuser's chest. The trackers that capture the positions of the user'shands and feet are mounted to the grip and foot binding end effectors ofthe movable armatures of the machine, and not to the user. While in use,the user's hands grip the hand grip end effectors, and their feet remainaffixed to the foot bindings at the lower two end effectors. In thisway, those trackers mounted to the end effectors (hand and feet UIs)move synchronously with the hands and feet, and can be accurately offsetto determine the correct location of the user's hands and feet. Theprocessor can display the movements of full body avatars, based on thesix point tracking of the user in the VR apparatus and real-time motionof these body tracking points.

In other embodiments, the VR system can utilize additional trackingpoints on the user's body that can include the knees, elbows andshoulders. By using more body track points the processor can moreaccurately display the user's avatar. In an embodiment, the user's bodytracking points can be optical high contrast markers which are placed onthe designated points of the user's body. When the user is using the VRapparatus, the markers are visible to multiple cameras mounted on oraround the VR apparatus. The cameras can be coupled to a processor whichcan use triangulation processing such as photogrammetry to determine thelocations of each of the markers in a three-dimensional space.Alternatively, in other embodiments, the cameras can identify thelocations of specific joints on the user's body based upon photographicand/or video images of the VR system user. By viewing the bodymovements, the bending of the limbs can be detected and the positions ofthe joints can be identified these identified locations can be used forthe body tracking. In other embodiments, the body markers can beelectronic devices which

Since the underlay skeleton of the avatar is scaled to the proportionsof the user's body markings, the position of any tracker determines thebend angle between that tracker and the adjacent body part. For example,if only the right hand moves, but the five remaining trackers do not,then the VR processor can determine that the elbow joint must havechanged to enable this new detected body marker position, and this datacan be interpreted by the processor and the avatar's skeleton can beupdated on the displayed avatar accordingly. Since the digital skeletonincludes built-in motion limitations at every joint based on the humanmotion constraints of each joint, the resulting direction and angle ofthose two arm bones is further refined so that the VR processor canaccurately recreate the original human body motion on the visualdisplay.

In an embodiment, the avatar displayed by the VR processor can be scaledto any user's proportions, in order to create an accurate illusion thatthey have been accurately integrated into the VR environment settings.To do this, the VR processor can determine the height of the user's eyesfrom the floor, because all system users are wearing VR headsets overtheir eyes and the locations of the VR headsets can be measured, and thefloor location is known. Once the user's height from foot/ground surfaceto eye (VR headsets) is known, every other proportion can be determinedby proportional relationship based on human factors charts. For example,in general, the length from a user's wrist to elbow is approximately 17%the distance of ground-to-eye on most humans. Other body dimensions canbe calculated by the VR processor in a similar proportional manner basedupon average or ranges of normal body proportions.

The proposed invention creates an avatar for the user, based on theinterpretation of the user's height of their eyes, which can beunambiguously determined by their VR headset position. The height of theeyes can then be divided by various known denominators based on humanstatistical proportions so that the length of every segment of everylimb is determined by the VR processor. The avatar templates used by theVR processor therefore do not simply scale to change size, but applyeach of these proportions to determine the distance between the jointsin the limb segments. To change size, each of the avatar's limb segmentstelescope in a sliding motion together or apart, changing in length asneeded to achieve the intended length between the adjacent joints. Onceat the appropriate length, that limb segment length remains fixed tothat user's avatar displayed by the VR processor.

Given these proportions, the avatar's long limbs can scale, since eachlong bone comprises two telescoping parts designed to allow suchscaling. Since the hands, feet, head and torso of the user areaccurately tracked in positional and rotational motion and location, awide variety of avatars may be mapped to the same tracking positions,giving the user the sense that they have transformed into other human ornon-human forms. The avatars can match the appearance of the user or becompletely customizable by the user. The avatar be designed by the userthrough the VR processor and stored in a memory coupled to the VRprocessor. An avatar may take any visual shape and appearance. Theappearance may depend upon the context of the VR environment. Forexample, a middle ages VR environment may utilize knight in armoravatars and a futuristic science fiction VR environment ca utilize robotor alien being avatars. The VR processor can also create avatars thatcould also take the form of a primate, with simian proportions for thebody, as long as the hands, feet, head and torso remain in the samelocations. In still other embodiments, the VR process can allow theusers' avatars to become a snowman, a cluster of rocks, a cloud, a swarmof bees, folded origami, among others. FIG. 45 shows a VR display thirdperson view of a VR display of a user's avatar 551 riding a flyingvehicle 553 where the avatar is standing on a vehicle platform andholding the vehicle controls. The VR processor can be configured tocause the VR apparatus to simulate the movement of the flying vehicle inthe VR display.

Virtual and haptic experiences for fitness, realism, gaming, etc. havebeen created. In order to create a VR visualization display thatsimulates a human performing a specific activity, that activity devicemust be virtually created either as a VR likeness of the activitydevice, or as a dissimilar virtual device that is similar in physicalfunctionality. For example, a user might ride a stationary bicycle, butthrough their VR headset, they perceive themselves as an athlete ridinga racing bicycle through the Alps among other racers in a VRenvironment. In other embodiments, the VR system can create sciencefiction VR environments using real exercise equipment. A user exercisingon a real rowing machine may appear to the user in a VR display to be aspaceship traveling through asteroids at a pace determined by the paceof real rowing exercise machine. The VR system can have a sensor on thereal rowing machine that can detect the speed to the rowing machinewhich can be used by the VR processor to control the speed of thespaceship on the VR display.

In another example, the user may use a stationary bicycle while wearinga VR headset to distract from the tedium of stationary riding. Thestationary cycling activity can be limited to the single pedaling motionof that real-world machine and the pedaling speed of the stationarybicycle can be detected by a sensor and the speed data can betransmitted to the VR processor which can display a VR environment wherea virtual bicycle or other VR object can be displayed that moves in amanner that is proportional to the pedaling speed of the stationarybicycle. FIG. 46 illustrates an embodiment of a VR display showing anavatar 551 pedaling a VR machine 555 with the movements of the VR avatarcorresponding to the detected movement of an actual user on a stationarybicycle.

This single real exercise machine can be problematic because it onlyallows a user to perform one or a limited number of movements. In orderto offer a full-body workout, multiple user movement machines must beused. This can require moving the user from a first machine to a secondmachine. The second machine may also require donning and doffing andsetup of the VR equipment for each additional real machine prior to useby the user. Furthermore, the mechanical machine must be set to thecorrect ergonomic position for each user in order to avoid harm.

In order to overcome the problem of switching machines for differentuser movements, the inventive system can use Mechs as interstitialintermediary devices which are intermediary VR devices that translatethe user's actions into believable VR world activities. The proposedinvention can be a substantial improvement over traditional realexercise machine approaches in that the Mechs can create various virtualintermediary devices through the described VR apparatus that iscontrolled by a VR processor. With this system, the user doesn't need tomove to a different movement machine when different movements are beingdetected. The Mech can be any virtual machine that requires the human'sphysical input to actuate. The human motion may include the user movingtheir arms up and down, away from the body and toward, squats, leglifts, cross-country ski motion, cycling leg rotations, running, or anynumber of motions that would typically be found in a fitnessenvironment. The VR machine and processor create specific force feedbackin order to simulate the forces that a user might expect, if the virtualmachine were real. By creating a fictitious machine in the virtualworld, the VR machine and processor are able to engage the user in anactivity with a heightened sense of realism and engagement, which drivesgreater compliance with an ongoing fitness regimen.

As discussed, the VR machine can allow or prevent movements of the usersarms and legs. In an embodiment, the VR machine can simulate cycling byallowing the leg armatures to only allow the leg UIs to move in acoordinated circular rotational movement where each leg UI rotates in acircular motion that can have a 175 mm radius where each leg UI isoffset by 180 degrees from the other leg UI. If the user attempts tomove outside of a circular movement or the leg UIs are not coordinated,the VR processor can prevent these movements that do not match with areal machine movement and provide force feedback to simulate therotational movement based upon force transducers in the leg (and arm)UIs. For example, the VR machine can only allow the foot UIs to movewithin parallel circular low or essentially zero resistance paths withinthe VR volume that simulates pedals at the ends of bicycle crank arms.If the user attempts to move the foot UIs outside the circular path theVR machine will prevent this movement. This circular movement If a userpedals in one rotational direction with the left foot with a first forceand simultaneously attempts to pedal in the opposite rotationaldirection with the right foot with less force, the VR machine willrotate the foot UIs in the direction that the user has applied the mostforce which is the left foot UI direction. However, the VR apparatuswill measure the left foot force and the right foot force. The VRapparatus will then resist the left foot force with the oppositemeasured right foot force and UI will also apply the measured left footforce to the right foot UI. When the user has completed cycling, the VRsystem can then use a Mech to transition into a different body movementsuch as getting off or the VR bicycle, walking through a VR environmentto a VR boat, and then rowing in the VR boat. The Mechs can beexperienced in first person or third person through the user's avatar.The virtual mechanical devices in the VR apparatus provide a gamingexperience that gives the user a sense of interacting with a machine,both visually, audibly, and due to the haptic feedback coming from theirmotion. In these cases, the user's motion is constrained into a specificdirection or axis, intended to provide the most effective fitnessresults.

The mechs can be controlled by the VR system to the body sizeproportions of the user. Since the user's height is known, then thelocations of elbows, hips, knees, etc. is also known. Therefore, themech can self-scale proportionally so that its sliding components alignwith the known, ideal location for the user's fitness interest. Forexample, if the user's VR Avatar appears to be driving a tractor, the VRsystem can set the height of the virtual grips to an ideal location forthe user's fitness, based on their physiology and proportions. The VRsystem can automatically adjust the VR apparatus for any user's physicaldimensions.

The Mechs can also be used as an intermediary device that improves thequality of user fitness by allowing the VR apparatus machine to setvarious heights and motion limits to the specific settings required forthe individuals' unique body proportions. Each virtual mech scales andadjusts the virtual ‘tracks’ and ‘pistons’ and other simulatedcomponents in such a way that they position the user accurately for thesafest and most effective motions, avoiding hyper-extension of theuser's limbs or any other potentially harmful variation in motion of theVR apparatus.

In an embodiment, the VR system can also be configured to providevirtual intermediary devices that may take the form of hand-held VRobjects, such as a paddle or a sword in the described VR display andenvironment. The VR processor is able to make such a hand-held VR devicephysically simulate contact with water or an opponent by applying adesignated type of force feedback to that activity by applyingresistance to the armatures and hand/feet UIs. A virtual paddle, forexample, will feel resistive pressure against a paddling motion onlywhile pulling the blade of the paddle through virtual fluid such aswater or other liquid substances. However, if the VR processordetermines that the blade of the paddle is only in virtual air and notwithin the virtual water, the VR processor will control the hand UIs tonot apply pressure when the paddle moves through air between strokes.

FIG. 47 illustrates an avatar 551 with a VR paddle 557 standing on a VRpaddleboard 559 displayed on a VR display worn by a system user. The VRapparatus does not provide resistance in the illustrated position otherthan the gravitational forces on the hands to simulate the weight of theVR paddle 557 because the paddle blade is not in the virtual water.Similarly, if a user pulls the VR paddle 557 to the left or right withthe right hand UI, this force will be detected by the VR machine and theVR processor can transmit a corresponding left or right force to theleft hand UI and maintain a fixed distance between the left hand UI andthe right hand UI. The VR processor can also apply a water resistanceforce to the left foot armature and the right foot armature wherein thewater resistance force is proportional to a speed of the VR paddle boardthrough the VR body of water. In this example, the VR apparatus providesresistances to user's movements. In contract, other UI simulations canhave full stop rather than movement resistance. For example, a VR objectcan be a VR sword or striking weapon, which will stop all motionimmediately upon impact of the VR object against a solid VR object,simulating the sensation of a strike.

As discussed, the resistance applied to the motion of the armatures maybe set by the software so that it simulates the real-life experience aswell as numerous enhanced capabilities. For example, with reference toFIG. 48, the user's avatar 551 can utilize a VR flying apparatus 560which can provide the avatar 551 with the ability to fly within the VRenvironment. The VR flying apparatus 560 can have a support surface forthe feet and hand controls 562 that the avatar can grasp and manipulateto control the VR flying apparatus 560 in the VR environment.

As discussed, the VR apparatus can have force and/or pressure sensorsbuilt into the armatures and/or UIs. Speed of the UIs can be determinedby the motion trackers can monitor the forces and speed exerted duringthe activity. The software can then adjust that resistance based on theuser's fitness expectations, or safety considerations designed into thesoftware. Because the VR apparatus can have force sensors and the VRprocessor can detect the forces applied by the user to during the VRmovements. The VR processor can be configured to ‘learn’ and adapt themovement resistance as the user's strength improves or decreases orbased upon coach, trainer, and/or physical therapist recommendations. Ifa user has specific physical fitness goals, the VR system can beconfigured to gradually increase the force required to perform the VRexercises so that the user's required exertion can increase and theresulting strength can improve.

The ability to set both the positions of the movable armatures, therange of their motions, and their force resistance in any direction alsomakes the device ideal for physical therapy and rehabilitation. PhysicalTherapy often suffers from the user either doing a rehab motionincorrectly, often with the wrong amount of force, or the wrongposition. The VR system can guarantee that both the position/motion andforce are correct for their particular stage of rehabilitation, and canadapt as needed, based on their progress.

A further value of the VR system is compliance monitoring of physicaltherapy and rehabilitation movements. Patients may not comply with thephysical regimen as prescribed by physical therapist or other medicalprofessionals. Non-compliance can be due to boring movement, timeconsuming, and painful movements. Because physical therapy can beperformed without supervision or monitoring, a doctor will not know ifthe patient has reduced or skipped the prescribed physical therapyregimen. The VR system can be used to improve the physical therapyregimen which will be more entertaining and engaging in a VRenvironment. The VR system can entice the patient to perform thespecified physical therapy and commit the required time. The prescribingdoctor or physical therapist may also monitor the progress of thepatient's strength and endurance through software communications betweenthe VR apparatus and a computing device of the doctor. My monitoring thepatient's activities and communicating with the patient, the doctor orother medical professional can have much better knowledge of patientcompliance and hopefully determine that the progress is proceeding asexpected. A sudden change in the force feedback metrics transmitted fromthe VR apparatus to the computing device of the medical professional mayindicate a noteworthy change in the patient's condition.

The VR system can also function as a competitive or solo sport platform.In a competitive sport environment, users may compete in a setting withsimulated physics that function outside the parameters of the physicalworld, in order to make a more compelling immersive VR environmentexperience. One example may be in the ability to create an illusion thata competitor may experience a gravity in a direction different fromother VR users. In such a case, that user might feel gravity in thefamiliar, downward direction. But their visual and haptic experiencecould indicate to them that their VR surroundings are different from theexpected real-world gravitational forces. For example, the user canconfigure the VR system in an opposite gravitational direction with thevisual display set up so that the user experiences an opposite upwardgravitational force. In this opposite gravitational configuration, theuser (or user's avatar) may climb the Eiffel Tower from the top downwardto the bottom with the VR environment completely inverted. The user canstand in the VR environment with the feet up and head down so that theVR experience requires looking up to see Paris above them, while othervirtual climbers in the same VR environmental simulation can have anormal gravitational simulation. From the VR display, these other VRusers (or users' avatars) can climb from the bottom to the top of theEiffel Tower moving past the user in an opposite direction and oppositebody orientation.

The VR system can also be used for performing interactive VR gamesbetween system users. In an embodiment, the VR game can include specialpowers such as improved VR strength, altered gravitational forces, andpowers applied to other VR game users. For example, in a VR game, aplayer may acquire the ability ‘freeze’ the VR motion of a competitor,effectively locking all motion of that person's VR apparatus. The‘frozen’ user would see no motion from their avatar in their VR display,and the user would experience this frozen state physically because he orshe would be unable to move hands or feet due to locked armatures andlocked hand and feet UIs.

In another embodiment, a VR game competitor could virtually dismember anopponent. This may occur due to a simulated VR combat injury. This wouldbe simulated by the disappearance, for example, of the player's rightarm from the VR display, and all haptics being disengaged for the user'sright arm in the VR apparatus can be locked so that while the user has areal (uninjured) right arm, the right arm UI in the VR apparatus nolonger moves and no longer has the ability to contribute to balance orany other real physical or VR activity.

FIG. 48 shows an example of a generic computer device 900 and a genericmobile computer device 950, which may be used to implement the processesdescribed herein, including the mobile-side and server-side processesfor installing a computer program from a mobile device to a computer.Computing device 900 is intended to represent various forms of digitalcomputers, such as laptops, desktops, workstations, personal digitalassistants, servers, blade servers, mainframes, and other appropriatecomputers. Computing device 950 is intended to represent various formsof mobile devices, such as personal digital assistants, cellulartelephones, smartphones, and other similar computing devices. Thecomponents shown here, their connections and relationships, and theirfunctions, are meant to be exemplary only, and are not meant to limitimplementations of the inventions described and/or claimed in thisdocument.

Computing device 900 includes a processor 902, memory 904, a storagedevice 906, a high-speed interface 908 connecting to memory 904 andhigh-speed expansion ports 910, and a low speed interface 912 connectingto bus 914 and storage device 906. Each of the components processor 902,memory 904, storage device 906, high-speed interface 908, high-speedexpansion ports 910, and low speed interface 912 are interconnectedusing various busses, and may be mounted on a common motherboard or inother manners as appropriate. The processor 902 can process instructionsfor execution within the computing device 900, including instructionsstored in the memory 904 or on the storage device 906 to displaygraphical information for a GUI on an external input/output device, suchas display 916 coupled to high speed interface 908. In otherimplementations, multiple processors and/or multiple busses may be used,as appropriate, along with multiple memories and types of memory. Also,multiple computing devices 900 may be connected, with each deviceproviding portions of the necessary operations (e.g., as a server bank,a group of blade servers, or a multi-processor system).

The memory 904 stores information within the computing device 900. Inone implementation, the memory 904 is a volatile memory unit or units.In another implementation, the memory 904 is a non-volatile memory unitor units. The memory 904 may also be another form of computer-readablemedium, such as a magnetic or optical disk.

The storage device 906 is capable of providing mass storage for thecomputing device 900. In one implementation, the storage device 906 maybe or contain a computer-readable medium, such as a floppy disk device,a hard disk device, an optical disk device, or a tape device, a flashmemory or other similar solid state memory device, or an array ofdevices, including devices in a storage area network or otherconfigurations. A computer program product can be tangibly embodied inan information carrier. The computer program product may also containinstructions that, when executed, perform one or more methods, such asthose described above. The information carrier may be a non-transitorycomputer- or machine-readable storage medium, such as the memory 904,the storage device 906, or memory on processor 902.

The high speed controller 908 manages bandwidth-intensive operations forthe computing device 900, while the low speed controller 912 manageslower bandwidth-intensive operations. Such allocation of functions isexemplary only. In one implementation, the high-speed controller 908 iscoupled to memory 904, display 916 (e.g., through a graphics processoror accelerator), and to high-speed expansion ports 910, which may acceptvarious expansion cards (not shown). In the implementation, low-speedcontroller 912 is coupled to storage device 906 and port 914. Thelow-speed expansion port 914, which may include various communicationports (e.g., USB, Bluetooth, Ethernet, wireless Ethernet), may becoupled to one or more input/output devices, such as a keyboard 936 incommunication with a computer 932, a pointing device 935, a scanner 931,or a networking device 933 such as a switch or router, e.g., through anetwork adapter. In the illustrated example, the high speed controller908 can be coupled to a visual display 992 which can display a visual VRenvironment generated by the processor 952. The visual display 992 canbe part of a VR headset worn by a user of the described VR system. Theexternal interface 962 can also be coupled to the VR movement apparatuswhich can provide haptic VR environments which are coordinated andsynchronously output with visual VR environments as described above.

The computing device 900 may be implemented in a number of differentforms, as shown in the figure. For example, it may be implemented as astandard server 920, or multiple times in a group of such servers. Itmay also be implemented as part of a rack server system 924. Inaddition, it may be implemented in a personal computer such as a laptopcomputer 922. Alternatively, components from computing device 900 may becombined with other components in a mobile device (not shown), such asdevice 950. Each of such devices may contain one or more of computingdevice 900, 950, and an entire system may be made up of multiplecomputing devices 900, 950 communicating with each other.

Computing device 950 includes a processor 952, memory 964, aninput/output device such as a display 954, a communication interface966, and a transceiver 968, among other components. The device 950 mayalso be provided with a storage device, such as a Microdrive, solidstate memory or other device, to provide additional storage. Each of thecomponents computing device 950, processor 952, memory 964, display 954,communication interface 966, and transceiver 968 are interconnectedusing various busses, and several of the components may be mounted on acommon motherboard or in other manners as appropriate.

The processor 952 can execute instructions within the computing device950, including instructions stored in the memory 964. The processor maybe implemented as a chipset of chips that include separate and multipleanalog and digital processors. The processor may provide, for example,for coordination of the other components of the device 950, such ascontrol of user interfaces, applications run by device 950, and wirelesscommunication by device 950.

Processor 952 may communicate with a user through control interface 958and display interface 956 coupled to a display 954. The display 954 maybe, for example, a TFT LCD (Thin-Film-Transistor Liquid Crystal Display)or an OLED (Organic Light Emitting Diode) display, or other appropriatedisplay technology. The display interface 956 may comprise appropriatecircuitry for driving the display 954 to present graphical and otherinformation to a user. The control interface 958 may receive commandsfrom a user and convert them for submission to the processor 952. Inaddition, an external interface 962 may be provided in communicationwith processor 952, so as to enable near area communication of device950 with other devices. External interface 962 may provide, for example,for wired communication in some implementations, or for wirelesscommunication in other implementations, and multiple interfaces may alsobe used. The memory 964 stores information within the computing device950. The memory 964 can be implemented as one or more of acomputer-readable medium or media, a volatile memory unit or units, or anon-volatile memory unit or units. Expansion memory 974 may also beprovided and connected to device 950 through expansion interface 972,which may include, for example, a SIMM (Single In Line Memory Module)card interface. Such expansion memory 974 may provide extra storagespace for device 950, or may also store applications or otherinformation for device 950. Specifically, expansion memory 974 mayinclude instructions to carry out or supplement the processes describedabove, and may include secure information also. Thus, for example,expansion memory 974 may be provided as a security module for device950, and may be programmed with instructions that permit secure use ofdevice 950. In addition, secure applications may be provided via theSIMM cards, along with additional information, such as placingidentifying information on the SIMM card in a non-hackable manner.

The memory may include, for example, flash memory and/or NVRAM memory,as discussed below. In one implementation, a computer program product istangibly embodied in an information carrier. The computer programproduct contains instructions that, when executed, perform one or moremethods, such as those described above. The information carrier is acomputer- or machine-readable medium, such as the memory 964, expansionmemory 974, memory on processor 952, or a propagated signal that may bereceived, for example, over transceiver 968 or external interface 962.

Device 950 may communicate wirelessly through communication interface966, which may include digital signal processing circuitry wherenecessary. Communication interface 966 may provide for communicationsunder various modes or protocols, such as GSM voice calls, SMS, EMS, orMMS messaging, CDMA, TDMA, PDC, WCDMA, CDMA2000, or GPRS, among others.Such communication may occur, for example, through radio-frequencytransceiver 968. In addition, short-range communication may occur, suchas using a Bluetooth, Wi-Fi, or other such transceiver (not shown). Inaddition, GPS (Global Positioning System) receiver module 970 mayprovide additional navigation- and location-related wireless data todevice 950, which may be used as appropriate by applications running ondevice 950.

Device 950 may also communicate audibly using audio codec 960, which mayreceive spoken information from a user and convert it to usable digitalinformation. Audio codec 960 may likewise generate audible sound for auser, such as through a speaker, e.g., in a handset of device 950. Suchsound may include sound from voice telephone calls, may include recordedsound (e.g., voice messages, music files, etc.) and may also includesound generated by applications operating on device 950.

The computing device 950 may be implemented in a number of differentforms, as shown in the figure. For example, it may be implemented as acellular telephone 980. It may also be implemented as part of asmartphone 982, personal digital assistant, a tablet computer 983 orother similar mobile computing device.

Various implementations of the systems and techniques described here canbe realized in digital electronic circuitry, integrated circuitry,specially designed ASICs (application specific integrated circuits),computer hardware, firmware, software, and/or combinations thereof.These various implementations can include implementation in one or morecomputer programs that are executable and/or interpretable on aprogrammable system including at least one programmable processor, whichmay be special or general purpose, coupled to receive data andinstructions from, and to transmit data and instructions to, a storagesystem, at least one input device, and at least one output device.

These computer programs (also known as programs, software, softwareapplications or code) include machine instructions for a programmableprocessor, and can be implemented in a high-level procedural and/orobject-oriented programming language, and/or in assembly/machinelanguage. As used herein, the terms “machine-readable medium”“computer-readable medium” refers to any computer program product,apparatus and/or device (e.g., magnetic discs, optical disks, memory,Programmable Logic Devices (PLDs)) used to provide machine instructionsand/or data to a programmable processor, including a machine-readablemedium that receives machine instructions as a machine-readable signal.The term “machine-readable signal” refers to any signal used to providemachine instructions and/or data to a programmable processor.

To provide for interaction with a user, the systems and techniquesdescribed here can be implemented on a computer having a display device(e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor)for displaying information to the user and a keyboard and a pointingdevice (e.g., a mouse or a trackball) by which the user can provideinput to the computer. Other kinds of devices can be used to provide forinteraction with a user as well; for example, feedback provided to theuser can be any form of sensory feedback (e.g., visual feedback,auditory feedback, or tactile feedback); and input from the user can bereceived in any form, including acoustic, speech, or tactile input.

The systems and techniques described here can be implemented in acomputing system that includes a back end component (e.g., as a dataserver), or that includes a middleware component (e.g., an applicationserver), or that includes a front end component (e.g., a client computerhaving a graphical user interface or a Web browser through which a usercan interact with an implementation of the systems and techniquesdescribed here), or any combination of such back end, middleware, orfront end components. The components of the system can be interconnectedby any form or medium of digital data communication (e.g., acommunication network). Examples of communication networks include alocal area network (“LAN”), a wide area network (“WAN”), and theInternet.

The computing system can include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other.

What is claimed is:
 1. A virtual reality (VR) system comprising: a VRapparatus for providing a haptic VR environment, the movement apparatuscomprising: a frame; a left hand armature coupled to the frame and aleft hand user interface (UI) wherein the left hand armature restrictsthe movement of the left hand UI; a left hand force sensor coupled tothe left hand UI; a right hand armature coupled to the frame and a righthand UI wherein the right hand armature restricts the movement of theleft hand UI; a right hand force sensor coupled to the right hand UI; aleft foot armature coupled to the frame and a left foot UI wherein theleft foot armature restricts the movement of the left foot UI; a leftfoot force sensor coupled to the left foot UI; a right foot armaturecoupled to the frame and a right foot UI wherein the right foot armaturerestricts the movement of the right foot UI; a right foot force sensorcoupled to the right foot UI; a VR display for displaying a VRenvironment; a VR processor running a VR program wherein the VRprocessor receives user force data from the left hand force sensor, theright hand force sensor, the left foot force sensor, and the right footforce sensor, and the VR processor transmits haptic VR object data tothe left hand armature, the right hand armature, the left foot armatureand the right foot armature and transmits visual VR environment data tothe VR display; and a memory coupled to the VR processor for storingstatuses of blocks in a VR volume wherein the VR processor identifiesthe block locations of the left hand UI, the right hand UI, the leftfoot UI, and the right foot UI within the VR volume and the VR processorcontrols the left hand armature, the right hand armature, the left footarmature, and the right foot armature to prevent the left hand UI, theright hand UI, the left foot UI, and the right foot UI from moving fromfree blocks to solid blocks in the VR volume.
 2. The system of claim 1wherein the VR object data includes a VR paddle and a paddle forcedetected by the left hand force sensor causes the VR processor to applya force to the right hand armature.
 3. The system of claim 2 wherein theVR object data includes a VR body of water and the VR processor appliesa left hand resistance force to the left hand armature and a right handresistance force to the right hand armature when the VR paddle contactsthe VR body of water.
 4. The system of claim 2 wherein the VR objectdata includes a VR paddle board on the VR body of water and the VRprocessor applies a water resistance force to the left foot armature andthe right foot armature wherein the water resistance force isproportional to a speed of the VR paddle board through the body ofwater.
 5. The system of claim 2 wherein the VR object data includes a VRpaddle board on the VR body of water and the VR processor applies awater turbulence motion to the left foot armature and the right footarmature wherein the left foot armature and the right foot armature movevertically in cyclical waves.
 6. The system of claim 2 wherein the VRobject data includes a VR vehicle wherein the VR processor displays theVR vehicle moving at a speed in the VR environment that is proportionalto a rotational speed of the left hand UI and the right hand UI.
 7. Thesystem of claim 1 wherein the VR object data includes a first VR footpedal and a second VR foot pedal wherein the free blocks in the VRvolume form two parallel circular paths in the VR volume.
 8. The systemof claim 1 wherein the VR object data includes a VR bicycle and a forcedetected by the left foot force sensor causes the VR processor to applya force to the right foot armature.
 9. The system of claim 1 wherein theVR object data includes a VR pedal vehicle wherein the VR processordisplays the VR pedal vehicle moving at a speed in the VR environmentthat is proportional to a rotational speed of the left foot UI and theright foot UI.
 10. A virtual reality (VR) system comprising: a VRapparatus for providing a haptic VR environment, the movement apparatuscomprising: a frame; a left hand armature coupled to the frame and aleft hand user interface (UI) wherein the left hand armature restrictsthe movement of the left hand UI; a left hand force sensor coupled tothe left hand UI; a right hand armature coupled to the frame and a righthand UI wherein the right hand armature restricts the movement of theleft hand UI; a right hand force sensor coupled to the right hand UI; aVR display for displaying a VR environment; a VR processor running a VRprogram wherein the VR processor receives user force data from the lefthand force sensor, the right hand force sensor, the left foot forcesensor, and the right foot force sensor, and the VR processor transmitshaptic VR object data to the left hand armature, the right handarmature, the left foot armature and the right foot armature andtransmits visual VR environment data to the VR display; and a memorycoupled to the VR processor for storing statuses of blocks in a VRvolume wherein the VR processor identifies the block locations of theleft hand UI, the right hand UI, the left foot UI, and the right foot UIwithin the VR volume and the VR processor controls the left handarmature and the right hand armature to prevent the left hand UI and theright hand UI from moving from free blocks to solid blocks in the VRvolume.
 11. The system of claim 10 wherein the VR object data includes aVR paddle and a paddle force detected by the left hand force sensorcauses the VR processor to apply a force to the right hand armature. 12.The system of claim 11 wherein the VR object data includes a VR body ofwater and the VR processor applies a left hand resistance force to theleft hand armature and a right hand resistance force to the right handarmature when the VR paddle contacts the VR body of water.
 13. Thesystem of claim 10 wherein the VR object data includes a solidstationary object and the VR processor applies a left hand resistanceforce to the left hand armature to simulate virtual contact of the lefthand UI with the solid stationary object and a right hand resistanceforce to simulate virtual contact with the solid stationary object tosimulate virtual contact of the right hand UI with the solid stationaryobject.
 14. A virtual reality (VR) system comprising: a VR apparatus forproviding a haptic VR environment, the movement apparatus comprising: aframe; a left foot armature coupled to the frame and a left foot UIwherein the left foot armature restricts the movement of the left footUI; a left foot force sensor coupled to the left foot UI; a right footarmature coupled to the frame and a right foot UI wherein the right footarmature restricts the movement of the right foot UI; a right foot forcesensor coupled to the right foot UI; a VR display for displaying a VRenvironment; a VR processor running a VR program wherein the VRprocessor receives user force data from the left hand force sensor, theright hand force sensor, the left foot force sensor, and the right footforce sensor, and the VR processor transmits haptic VR object data tothe left hand armature, the right hand armature, the left foot armatureand the right foot armature and transmits visual VR environment data tothe VR display; and a memory coupled to the VR processor for storingstatuses of blocks in a VR volume wherein the VR processor identifiesthe block locations of the left foot UI and the right foot UI within theVR volume and the VR processor controls the left foot armature and theright foot armature to prevent the left foot UI and the right foot UIfrom moving from free blocks to solid blocks in the VR volume.
 15. Thesystem of claim 14 wherein the VR object data includes a VR paddle boardon the VR body of water and the VR processor applies a water resistanceforce to the left foot armature and the right foot armature wherein thewater resistance force is proportional to a speed of the VR paddle boardthrough the body of water.
 16. The system of claim 14 wherein the VRobject data includes a VR paddle board on the VR body of water and theVR processor applies a water turbulence motion to the left foot armatureand the right foot armature wherein the left foot armature and the rightfoot armature move vertically in cyclical waves.
 17. The system of claim14 wherein the VR object data includes a VR vehicle wherein the VRprocessor displays the VR vehicle moving at a speed in the VRenvironment that is proportional to a rotational speed of the left footUI and the right foot UI.
 18. The system of claim 14 wherein the VRobject data includes a first VR foot pedal and a second VR foot pedalwherein the free blocks in the VR volume form two parallel circularpaths in the VR volume.
 19. The system of claim 14 wherein the VR objectdata includes a VR bicycle and a force detected by the left foot forcesensor causes the VR processor to apply a force to the right footarmature.
 20. The system of claim 14 wherein the VR object data includesa VR pedal vehicle wherein the VR processor displays the VR pedalvehicle moving at a speed in the VR environment that is proportional toa rotational speed of the left foot UI and the right foot UI.